コンストラクタの初期化リストのコーディングスタイル
メンバ変数が多いと初期化リストを書く場合に改行して縦に書きたい場合があります。
その場合に初期化リストの書き方でどう書くのが良いか迷ったのでまとめてみました。
それぞれの書き方についてのメリット、デメリットや別の書き方があれば教えてください。
※主にVS2013, 2015を使っているでそれを元にした意見になっています。
※1タブ4スペースを前提に書いています。
No.1
- コロンの位置が人によっては違和感を覚える?
- インデントがそろっているのでVisualStudioのコード整形がきく。
</ul>
class test_class
{
test_class():
a(),
b(),
c()
{}
int a, b, c;
};
No.2
- カンマが行のはじめに来ているのであまり見慣れない?
- インデントがそろっているのでVisualStudioのコード整形がきく。
</ul>
class test_class
{
test_class()
: a()
, b()
, c()
{}
int a, b, c;
};
No.3
- 1つ目以降の変数のインデントがずれているのでコード整形を使うとずれてしまう。
</ul>
class test_class
{
test_class()
: a(),
b(),
c()
{}
int a, b, c;
};