Skip to content

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

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();
    }
}

ハードタブ

(省略)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions