• 追加された行はこの色です。
  • 削除された行はこの色です。
#contents

* はじめに [#d8eca1f0]

** このページの意味 [#za4d934d]
- 忘れないようにメモっておく。
- 自分のコードでこれに違反してたらただちに取り締まる。

** キャメルとは [#i82efb4e]
AbstractList,ObjectInformation,など
単語の頭が大文字にしたやつのこと,らしい。

** POD型 [#z4599007]
** POD型とは [#z4599007]
初期化の際に,newを必要としないものをPOD型,と認識している。
つまり,メンバ変数にクラスのポインタを所持し,
それをコンストラクタでnewするものは非POD型。

* コーディングルール [#zf8e8e0b]

** クラス [#z695aad5]
非POD型はclassで定義する。
書式は次の通り。

- 公開修飾子はpublic,protected,privateの順番
- 要素の順番
-- typedef
-- static定数
-- static変数
-- static関数
-- コンストラクタ
--- デフォルトコンストラクタ
--- コピーコンストラクタ
--- その他のコンストラクタ
-- デストラクタ
-- メンバ変数
-- メンバ関数
-- メンバ変数

-- 内部クラス・構造体
** 構造体 [#m03db4b4]
POD型はstructで定義する。

** クラス・構造体の共通ルール [#w35f67bd]

*** 名前 [#t4fa5e05]
** クラス・構造体名 [#zb581415]
キャメル。基本的に略称は使用しない。
一部のみ有効。だけど極力フルネームで!

Obj -> Object
Info -> Information

*** メンバ関数 [#o5332c29]
** typedef [#v2a2a6c6]
キャメルで。
privateなら + '_' 。

** static定数 [#d2281924]
全部大文字,単語の区切りは'_'。

** static変数・メンバ変数 [#dd7cfbd6]
基本としてprivateに書くこと!
小文字から始まるキャメル + '_'。
private以外なら '_' は除去。

** static関数・メンバ関数 [#o5332c29]
小文字から始まるキャメルで。
privateに記述する場合,頭に'_'。

*** メンバ変数 [#ic0611b4]
基本的にprivateに宣言する。
小文字から始まるキャメルで,最後に'_'。
** 内部クラス・構造体 [#tca7969d]
キャメルで。
privateなら + '_' 。

*** 定数 [#d2281924]
全部大文字,単語の区切りは'_'。

** 列挙型 [#j1b651ee]
enumのこと。

*** 列挙型名 [#oe1ae345]
キャメルで。

*** 要素名 [#tbee3e6a]
列挙型名 + '_' + キャメルで。


** 名前空間 [#ec304136]
namespaceのこと。

記述順番は次の通り。

タイプ1.タイプ宣言。
- using タイプ名。
- タイプ宣言。
(abc順)

タイプ2.前方参照
- struct タイプ名
- class タイプ名
(abc順)

*** 名前 [#t5a1b353]
小文字から始まるキャメルで。


    ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS