mcpField
C
cpp

cpp

github.com/odjaramillo開発1154 回インストール14 週間前に更新
リポジトリ

cpp について

cppは、スマートポインター、RAII、現代的な言語パターンを中心とするC++コーディングガイドのスキルです。標準ライブラリ型の選択ガイドとビルドコマンド例も含みます。

主な機能

  1. 01スマートポインターによる所有権管理
  2. 02RAIIによるリソース管理
  3. 03現代的なC++のパターン
  4. 04標準型の選択ガイド
  5. 05g++、clang++、CMakeのコマンド

活用シーン

  1. 01所有権に応じたポインター型の選択
  2. 02RAIIを使ったリソース管理
  3. 03記載されたコマンドによるC++プロジェクトのビルド

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/odjaramillo/custom-rules --skill cpp

インストール後、Claude Code で/cppを入力して読み込まれたか確認します。

README(原文)English

プロジェクトの README より

この README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。

Critical Patterns

Smart Pointers (REQUIRED)
// ✅ ALWAYS: Use smart pointers
auto user = std::make_unique<User>("John");
auto shared = std::make_shared<Config>();

// ❌ NEVER: Raw new/delete
User* user = new User("John");
delete user;
RAII (REQUIRED)
// ✅ ALWAYS: Resource management through constructors/destructors
class FileHandle {
    std::fstream file_;
public:
    FileHandle(const std::string& path) : file_(path) {}
    ~FileHandle() { if (file_.is_open()) file_.close(); }
};
Modern Patterns (REQUIRED)
// ✅ Use auto for type deduction
auto items = std::vector<int>{1, 2, 3};

// ✅ Use range-based for loops
for (const auto& item : items) {
    process(item);
}

// ✅ Use structured bindings
auto [name, age] = getPerson();

Decision Tree

Need unique ownership?     → std::unique_ptr
Need shared ownership?     → std::shared_ptr
Need optional value?       → std::optional
Need multiple types?       → std::variant
Need string views?         → std::string_view

Commands

g++ -std=c++20 -Wall -Wextra main.cpp -o app
clang++ -std=c++20 main.cpp -o app
cmake -B build && cmake --build build

コメント