Skip to content

コーディング規約の字下げスタイル #18

@namachan10777

Description

@namachan10777

ブロック

以下の3つから投票を取ります。
ホワイトスミススタイル等を推す場合はコメントでお願いします。

K&R

if (cond) {
} else {
}

BSD

if (cond)
{
}
else 
{
}

Visual Studio

if (cond) {
}
else {
}

括弧前後の空白

個人的にはKNFスタイルが最も見やすいと思うのでこれを標準にしたいです。
ifやwhile等制御文と括弧の間には空白、関数と引数の括弧の間の空白は無し(定義、宣言、使用全て同様)

KNF

if (cond) {
}

void func() {
}

二項演算子の前後空白

空白は必須にしたいです。

auto x = 1 + 1;
if ((a == b) && (c != d)) {
}

配列、引数等の展開

最後のとじ括弧

改行あり

auto x = [
    1,
    2,
    3
];
dosomething(
    1,
    2,
    3
);

改行無し

auto x = [
    1,
    2,
    3];
dosomething(
    1,
    2,
    3);

セパレータ位置

先頭が不人気になりそうなので予め弁護しておくと、Cでは配列等の最後にカンマが来ることを認めていない為セパレータを行末に持ってくると、要素を追加してdiffを取った時に追加行とその前の行まで変更されたとされてしまいます。

先頭

auto x = [
    1
    ,2
    ,3
];

行末

auto x = [
    1,
    2,
    3
];

インデント

空白2文字

if (cond) {
  do();
  while(true) {
    do();
  }
}

空白4文字

if (cond) {
    do();
    while(true) {
        do();
    }
}

ハードタブ

(省略)

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions