Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
testdino-hq avatar

Cpp

  • 8 installs
  • 8 repo stars
  • Updated February 25, 2026
  • testdino-hq/google-styleguides-skills

Helps with ai & agent building tasks during AI-assisted development.

About

cpp is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • cpp
  • AI & Agent Building
  • AI-coding skill

Cpp by the numbers

  • 8 all-time installs (skills.sh)
  • +1 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #12,339 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/testdino-hq/google-styleguides-skills --skill cpp

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs8
repo stars8
Last updatedFebruary 25, 2026
Repositorytestdino-hq/google-styleguides-skills

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Google C++ Style Guide

Official Google C++ coding standards for consistent, maintainable code.

Golden Rules

1. Target C++20 — avoid non-standard extensions 2. 80-character line limit — for readability 3. 2-space indentation — no tabs 4. Use `const` liberally — for correctness and thread safety 5. Avoid exceptions — Google code doesn't use C++ exceptions 6. Smart pointers for ownershipstd::unique_ptr and std::shared_ptr 7. Header guards — use PROJECT_PATH_FILE_H_ format

Quick Reference

Naming Conventions

ElementConventionExample
Filessnake_caseurl_table.cc, url_table.h
Classes/StructsUpperCamelCaseUserService
FunctionsUpperCamelCaseGetUserById
Variablessnake_caseuser_count
ConstantskUpperCamelCasekMaxRetries
Class memberssnake_case_user_name_ (trailing _)
MacrosUPPER_SNAKE_CASEMAX_BUFFER_SIZE

Headers

// ✓ CORRECT - self-contained header with guard
#ifndef FOO_BAR_BAZ_H_
#define FOO_BAR_BAZ_H_

#include <string>
#include "base/basictypes.h"

class Baz {
 public:
  void DoSomething();
};

#endif  // FOO_BAR_BAZ_H_

Include order: related header → C system → C++ stdlib → other libs → your headers.

Classes

// ✓ CORRECT
class MyClass {
 public:
  explicit MyClass(int value);  // explicit for single-arg ctors
  ~MyClass();

  void DoSomething();
  int GetValue() const { return value_; }

 private:
  int value_;
  std::string name_;
};

Smart Pointers

// ✓ CORRECT - unique_ptr for exclusive ownership
std::unique_ptr<Foo> FooFactory();
void FooConsumer(std::unique_ptr<Foo> ptr);

// ✓ CORRECT - shared_ptr for shared ownership
std::shared_ptr<const Foo> immutable_foo;

// ✗ INCORRECT - avoid raw new/delete
Foo* foo = new Foo();  // avoid
delete foo;            // avoid

Modern C++ Features

// ✓ CORRECT - use auto for complex types
auto it = my_map.find(key);
auto widget = std::make_unique<Widget>(arg1, arg2);

// ✓ CORRECT - range-based for loops
for (const auto& item : container) {
  Process(item);
}

// ✓ CORRECT - nullptr, not NULL
Foo* ptr = nullptr;

// ✓ CORRECT - constexpr for compile-time constants
constexpr int kArraySize = 100;

Functions

// ✓ CORRECT - return type on same line
ReturnType ClassName::FunctionName(Type par_name1, Type par_name2) {
  DoSomething();
  return result;
}

// ✓ CORRECT - wrap long parameter lists (4-space indent)
ReturnType LongClassName::ReallyLongFunctionName(
    Type par_name1,
    Type par_name2,
    Type par_name3) {
  DoSomething();
}

Formatting

// ✓ CORRECT - braces and spacing
if (condition) {
  DoSomething();
} else {
  DoSomethingElse();
}

// ✓ CORRECT - pointer/reference alignment (attached to type)
char* c;
const std::string& str;

Common Mistakes

MistakeCorrect Approach
Using exceptionsUse error codes or absl::Status
Bare new/deleteUse smart pointers (unique_ptr)
NULL or 0 for nullUse nullptr
C-style castsUse C++ casts (static_cast, etc.)
using namespace stdNever in headers; avoid in .cc
Mutable global variablesUse singletons or dependency injection
Missing explicitMark single-arg constructors explicit

When to Use This Guide

  • Writing new C++ code
  • Refactoring existing C++
  • Code reviews
  • Setting up clang-format rules
  • Onboarding new team members

Install

npx skills add testdino-hq/google-styleguides-skills/cpp

Full Guide

See cpp.md for complete details, examples, and edge cases.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.