Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. C++ Core Guidelines

C++ Core Guidelines

NOASSERTIONCSS

A collaborative set of guidelines, rules, and best practices for writing modern, safe, and effective C++ code.

Visit WebsiteGitHubGitHub
45.4k stars5.6k forks0 contributors

What is C++ Core Guidelines?

The C++ Core Guidelines are a collaborative set of guidelines, rules, and best practices for writing modern C++ code, led by Bjarne Stroustrup. They focus on high-level issues like interfaces, resource management, memory safety, and concurrency to help developers create statically type-safe, leak-free, and error-resistant code. The guidelines are designed to be supported by analysis tools and are intended for gradual adoption in codebases.

Target Audience

C++ developers, software architects, and teams looking to adopt modern C++ practices (C++11 and newer) to improve code safety, maintainability, and performance. It's also valuable for organizations establishing coding standards or transitioning legacy codebases.

Value Proposition

Developers choose the C++ Core Guidelines because they provide authoritative, community-driven best practices from C++ creators, emphasizing safety and simplicity without sacrificing performance. Unlike informal style guides, they are tool-friendly and designed for real-world applicability, helping teams avoid common pitfalls and write future-proof code.

Overview

The C++ Core Guidelines are a set of tried-and-true guidelines, rules, and best practices about coding in C++

Use Cases

Best For

  • Establishing organizational coding standards for C++ projects
  • Transitioning legacy C++ codebases to modern C++ practices
  • Learning modern C++ best practices from authoritative sources
  • Improving code safety, memory management, and concurrency in C++ applications
  • Integrating static analysis tools with guideline enforcement
  • Designing C++ libraries and APIs with robust interface guidelines

Not Ideal For

  • Projects locked into pre-C++11 standards for legacy or compatibility reasons
  • Embedded or real-time systems with strict memory/performance constraints where modern abstractions may add overhead
  • Codebases heavily reliant on proprietary frameworks that conflict with guideline recommendations (e.g., custom memory allocators)
  • Rapid prototyping or one-off scripts where comprehensive guideline adherence is unnecessarily burdensome

Pros & Cons

Pros

Authoritative Leadership

Led by Bjarne Stroustrup, C++'s creator, ensuring the guidelines align with the language's evolution and future direction, as highlighted in the collaborative effort description.

Safety-First Design

Prioritizes statically type-safe, resource-leak-free code to catch logic errors, explicitly aiming for a 'smaller, simpler, safer language' as stated in the philosophy.

Tool Integration Ready

Rules are designed for static analysis tools, with references like the GSL implementation, facilitating automated enforcement and gradual adoption into codebases.

Gradual Adoption Focus

Intended for incremental introduction, allowing teams to customize and phase in guidelines without needing a full codebase overhaul, as noted in the scope.

Cons

Evolving Without Cadence

No strict release schedule means frequent changes; the README admits it's 'constantly evolving,' which can disrupt tooling and require ongoing updates.

Limited Low-Level Guidance

Focuses on high-level issues like interfaces, offering minimal advice on coding style or implementation details, which the scope acknowledges as 'less concerned' with.

Basic Documentation Format

Kept intentionally simple in ASCII for post-processing, lacking rich formatting or interactive elements, making it harder to navigate for some users.

Frequently Asked Questions

Quick Stats

Stars45,394
Forks5,553
Contributors0
Open Issues237
Last commit21 days ago
CreatedSince 2015

Tags

#software-architecture#memory-safety#coding-guidelines#resource-management#code-quality#best-practices#modern-cpp#cplusplus#concurrency#static-analysis

Built With

g
git
M
Markdown

Links & Resources

Website

Included in

C/C++70.6k
Auto-fetched 1 day ago

Related Projects

google-styleguidegoogle-styleguide

Style guides for Google-originated open-source projects

Stars39,697
Forks12,925
Last commit1 day ago
C++ Dos and Don'tsC++ Dos and Don'ts

The Chromium Projects > For Developers > Coding Style > C++ Dos and Don'ts

Stars0
Forks0
Last commit
Linux kernel coding styleLinux kernel coding style

Stars0
Forks0
Last commit
GNU Coding StandardGNU Coding Standard

Stars0
Forks0
Last commit
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub