コーディング規約 - Sharoku-haga/anagrAmble GitHub Wiki
コーディング規約
今回の制作におけるコーディング規約です
基本要素
・ヘッダーはDoxygen書く
・Doxygenで書く際はauthorを書く
・ヘッダーのインクルードガードの#defineはファイル名をすべて大文字、 単語の間は_で区切る
例:
ifndef CLASS_H
define CLASS_H
Class{}
endif // CLASS_H ←コメントで#defineで定義したものをかく
・ローカル変数名は小文字からはじめ、そのあとは単語のはじまりは大文字でかく
例:animalName,humanNum
・ポインタの*は型につける。
例:int* pNum/m_pNum
・ポインタ変数の前にはpをつける
例:int* pNum/m_pNum
・グローバル変数の前にはg_をつける
例:int g_Num
・参照型変数の前にはrをつける
例:int& m_rNum
・ポインタ渡しをする際、もしの渡す値が変わらないのであれば引数にconstをつける
・関数名は動詞から名づける。そして大文字ではじめる
例:DrawPlayer()
・コメント書く際は //の後は半角スペースをあける
例:// コメント
・開き中括弧の前には改行を入れる
{
実装部分
}
と形で書く
・マジックナンバーは極力つかわない。 もしつかうならその数値の意味をかくこと
・ライブラリーのヘッダーは必要な分だけ読み込む
・参照渡しをする際は基本的にconstをつける
名前空間
・namespaceの命名規則は、snake_caseを用いる
・名前空間内の変数は大文字はじまりのキャメルケースでかく。
クラス関連
・クラスのファイル名はクラスの名前をつける
・クラスは基本hとcppの1組で作成する。ただしテンプレートなどはこれにあてはまらない
・クラスの名の始まりは大文字
例:class Scene
・アクセス指定子はpublic,protected,privateの順番で書く
・メンバ変数の頭にはm_をつける
例:m_Num
・Getter関数は頭にGetをつけ、そのあとに変数をつける
例:int m_Numを取得する場合の関数→int GetNum()
・Setter関数は頭にSetをつけ、そのあとに変数をつける
例:int m_Numを取得する場合の関数→int SetNum()
・コンストラクタで引数が1つの場合はexplicitをつける