#contents * はじめに [#d8eca1f0] ** このページの意味 [#za4d934d] - 忘れないようにメモっておく。 - 自分のコードでこれに違反してたらただちに取り締まる。 ** キャメルとは [#i82efb4e] AbstractList,ObjectInformation,など 単語の頭が大文字にしたやつのこと,らしい。 ** POD型とは [#z4599007] 初期化の際に,newを必要としないものをPOD型,と認識している。 つまり,メンバ変数にクラスのポインタを所持し, それをコンストラクタでnewするものは非POD型。 * コーディングルール [#zf8e8e0b] ** クラス [#z695aad5] 非POD型はclassで定義する。 書式は次の通り。 - 公開修飾子はpublic,protected,privateの順番 - 要素の順番 -- typedef -- static定数 -- static変数 -- static関数 -- コンストラクタ --- デフォルトコンストラクタ --- コピーコンストラクタ --- その他のコンストラクタ -- デストラクタ -- メンバ変数 -- メンバ関数 -- 内部クラス・構造体 ** 構造体 [#m03db4b4] POD型はstructで定義する。 ** クラス・構造体名 [#zb581415] キャメル。基本的に略称は使用しない。 一部のみ有効。だけど極力フルネームで! Obj -> Object Info -> Information ** typedef [#v2a2a6c6] キャメルで。 privateなら + '_' 。 ** static定数 [#d2281924] 全部大文字,単語の区切りは'_'。 ** static変数・メンバ変数 [#dd7cfbd6] 基本としてprivateに書くこと! 小文字から始まるキャメル + '_'。 private以外なら '_' は除去。 ** static関数・メンバ関数 [#o5332c29] 小文字から始まるキャメルで。 privateに記述する場合,頭に'_'。 ** 内部クラス・構造体 [#tca7969d] キャメルで。 privateなら + '_' 。 ** 列挙型 [#j1b651ee] enumのこと。 *** 列挙型名 [#oe1ae345] キャメルで。 *** 要素名 [#tbee3e6a] 列挙型名 + '_' + キャメルで。 ** 名前空間 [#ec304136] namespaceのこと。 記述順番は次の通り。 タイプ1.タイプ宣言。 - using タイプ名。 - タイプ宣言。 (abc順) タイプ2.前方参照 - struct タイプ名 - class タイプ名 (abc順) *** 名前 [#t5a1b353] 小文字から始まるキャメルで。 |