Skip to main content

cpp-coding-standards

C++コアガイドラインに基づくC++コーディング標準(isocpp.github.io)。現代的で安全で慣用的なプラクティスを強制するためにC++コードを書き、レビュー、またはリファクタリングする場合に使用します。

소스 정보

저장소
affaan-m/ECC
최근 소스 활동
2026년 5월 17일 06:31
감지된 SKILL.md 언어
일본어
스타
279,616
포크
41,604

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
cpp-coding-standards
description
C++コアガイドラインに基づくC++コーディング標準(isocpp.github.io)。現代的で安全で慣用的なプラクティスを強制するためにC++コードを書き、レビュー、またはリファクタリングする場合に使用します。
origin
ECC
# C++コーディング標準(C++コアガイドライン) C++コアガイドラインから派生した最新のC++(C++17/20/23)の包括的なコーディング標準。タイプセーフティ、リソースセーフティ、不変性、明確性を強制します。 ## 使用時期 - 新しいC++コードを書く(クラス、関数、テンプレート) - 既存のC++コードをレビューまたはリファクタリング - C++プロジェクトでアーキテクチャ決定を行う - C++コードベース全体で一貫性のあるスタイルを実施 - 言語機能の選択(例:`enum` vs `enum class`、生ポインタ対スマートポインタ) ## クロスカッティング原則 これらのテーマはガイドライン全体に繰り返され、基礎を形成: 1. **至るところにRAII**:リソースライフタイムをオブジェクトライフタイムにバインド 2. **デフォルトで不変性**:`const`/`constexpr`で開始;変更可能性は例外 3. **タイプセーフティ**:型システムを使用してコンパイル時にエラーを防止 4. **意図を表現**:名前、タイプ、概念は目的を伝える必要があります 5. **複雑性を最小化**:シンプルなコードが正しいコード 6. **値セマンティクス対ポインタセマンティクス**:値で返すか、スコープ付きオブジェクトを好む ## 主要なルール | Rule | Summary | |------|---------| | **P.1** | コード内のアイデアを直接表現 | | **P.3** | 意図を表現 | | **P.4** | 理想的には、プログラムは静的にタイプセーフである必要があります | | **P.5** | ランタイムチェックに対するコンパイル時チェック | | **P.8** | リソースをリークしない | | **P.10** | 変更可能なデータより不変データを好む | | **I.1** | インターフェースを明示的にする | | **I.2** | 非const グローバル変数を避ける | | **I.4** | インターフェースを正確にし、強く型付けされたものにする | ## スマートポインタと所有権 現代的なC++では、生ポインタの代わりにスマートポインタを使用: - `std::unique_ptr<T>` 単一所有者向け - `std::shared_ptr<T>` 共有所有権向け - `std::weak_ptr<T>` 循環参照を回避するため
GitHub에서 보기