Skip to content
Back to skills

Cpp Coding Standards

ASecurity

C++ coding standards based on the C++ Core Guidelines (isocpp.github.io). Use when writing, reviewing, or refactoring C++ code to enforce modern, safe, and idiomatic practices. Only for C++ — not for C or other languages. Triggers on "cpp-coding-standards", "cpp coding standards", "c++ standards".

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 19, 2026
ai-agentsc++expressrefactoringgit

Security analysis

A100/100

Pro scans all 9 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add majinmagros/magros.ai-skills --skill cpp-coding-standards --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cpp Coding Standards?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cpp Coding Standards
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majinmagros-cpp-coding-standards/badge)](https://www.skillsdirectory.com/skills/majinmagros-cpp-coding-standards)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: cpp-coding-standards
description: C++ coding standards based on the C++ Core Guidelines (isocpp.github.io). Use when writing, reviewing, or refactoring C++ code to enforce modern, safe, and idiomatic practices. Only for C++ — not for C or other languages. Triggers on "cpp-coding-standards", "cpp coding standards", "c++ standards".
metadata:
  origin: ECC
---

# C++ Coding Standards (C++ Core Guidelines)

Comprehensive coding standards for modern C++ (C++17/20/23) derived from the [C++ Core Guidelines](https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines). Enforces type safety, resource safety, immutability, and clarity.

## When to Use

- Writing new C++ code (classes, functions, templates)
- Reviewing or refactoring existing C++ code
- Making architectural decisions in C++ projects
- Enforcing consistent style across a C++ codebase
- Choosing between language features (e.g., `enum` vs `enum class`, raw pointer vs smart pointer)

### When NOT to Use

- Non-C++ projects
- Legacy C codebases that cannot adopt modern C++ features
- Embedded/bare-metal contexts where specific guidelines conflict with hardware constraints (adapt selectively)

## Cross-Cutting Principles

Prefer compile-time safety over runtime checks: types, `const`, and RAII carry intent so the compiler enforces it. Details per area live in `references/`.

## Contents

| Topic | Reference |
|---|---|
| Philosophy, interfaces (P, I) | `references/philosophy-interfaces.md` |
| Functions (F) | `references/functions.md` |
| Classes (C) | `references/classes.md` |
| Resources, RAII (R) | `references/resources.md` |
| Expressions, init (ES) | `references/expressions.md` |
| Errors, const (E, Con) | `references/errors-const.md` |
| Concurrency, templates (CP, T) | `references/concurrency-templates.md` |
| Stdlib, enums, files, perf | `references/library-misc.md` |

## Example

```cpp
// Rule of Zero: no custom dtor/copy/move needed
class Widget {
    std::string name_;
    std::unique_ptr<Engine> engine_;
public:
    explicit Widget(std::string name)
        : name_(std::move(name)), engine_(std::make_unique<Engine>()) {}
};
```

## Quick Reference Checklist

Before marking C++ work complete:

- [ ] No raw `new`/`delete` -- use smart pointers or RAII (R.11)
- [ ] Objects initialized at declaration (ES.20)
- [ ] Variables are `const`/`constexpr` by default (Con.1, ES.25)
- [ ] Member functions are `const` where possible (Con.2)
- [ ] `enum class` instead of plain `enum` (Enum.3)
- [ ] `nullptr` instead of `0`/`NULL` (ES.47)

Files in this skill

  • SKILL.md2.5 KB
  • references/classes.md2.5 KB
  • references/concurrency-templates.md3.3 KB
  • references/errors-const.md2.8 KB
  • references/expressions.md1.3 KB
  • references/functions.md1.8 KB
  • references/library-misc.md4.3 KB
  • references/philosophy-interfaces.md973 B
  • references/resources.md1.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…