コーディング規約 - 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をつける