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