コーディング規約

ソースファイル
文字コード UTF-8

 

命名規則
対象 記法名
ファイル名 アッパーキャメルケース FileSystem.h
関数 アッパーキャメルケース PrintMessage
ローカル変数 ローワーキャメルケース fileName
ポインタ変数 先頭にpを付ける
※ダブルポインタなどはppと増やす
pFileName
クラス・構造体 アッパーキャメルケース GameManager
メンバ変数 先頭に _ (アンダースコア)を付ける _Width
構造体変数 アッパーキャメル RefreshRate
namespace アッパーキャメル Math
定数 アッパーケース DISPLAY_WIDTH

 

使用禁止
対象 概要
グローバル変数 基本的に使用禁止
C言語のキャスト C++のキャストを使用すること
typedef usingを使用すること
defineによる処理 基本的にtemplateやconstexprにする
※定数は可

 

キャスト
対象 内容
値のキャスト static_cast
ポインタのキャスト reinterpret_cast
アップキャスト
ダウンキャスト
dynamic_cast
コンストキャスト const_cast
基本的に使用しない事

 

改行・スペース
記法名
演算子 n = a + b;
左右にスペースを入れる
{, } それぞれ改行する
1行で収まる場合は省略可
if if (条件)
のようにスペースを入れる
for for (int i=0; i < n; i++)
のようにスペースを入れる
switch switch (値)
のようにスペースを入れる
関数 void Func(型 変数名)
のように(, )の部分にスペースは入れない

 

コメント
対象 記法
ファイルの先頭 //————————————————–
//! @file ファイル名
//! @brief 説明
//!
//! @author 名前
//————————————————–
ファイルの末尾 //==================================================
// END OF FILE
//==================================================
クラス・構造体 //==================================================
//! 説明
//==================================================
[class等] クラス名
変数
(ローカル変数除く)
型 変数名; //!< 説明
関数
(ヘッダ上の関数)
//! 説明
//! @param [in/out] 引数の説明
//! @param [in/out] 引数の説明
//! @return 戻り値の説明
※param, returnは無い場合に省略可
※引数の入力は[in], 出力は[out]で表す