函数参数延续
Function argument continuation
我正在查看 Clang-Format Style Options,但我找不到是否有以下选项。如果一个函数及其参数打破 ColumnLimit
我想在新行上继续参数。
// Good
SomeLongFunction(first_argument,
second_argument,
third_argument,
fourth_argument,
fifth_argument);
// Bad
SomeLongFunction(first_argument, second_argument, third_argument,
fourth_argument, fifth_argument);
看起来 AlignAfterOpenBracket
至少会让我配置在决定继续下一行时缩进的位置,但我找不到让我指定的东西来分解参数。
您可能想要:
BinPackParameters: false
有了这个,你的坏例子就被格式化成了好例子。文档:
BinPackParameters (bool)
If false, a function declaration’s or function definition’s parameters
will either all be on the same line or will have one line each.
true:
void f(int aaaaaaaaaaaaaaaaaaaa, int aaaaaaaaaaaaaaaaaaaa,
int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {}
false:
void f(int aaaaaaaaaaaaaaaaaaaa,
int aaaaaaaaaaaaaaaaaaaa,
int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {}
此外:
AllowAllParametersOfDeclarationOnNextLine: false
如果您希望中断所有参数,即使它们在一次中断后可以放在一行中,也可能很有用。文档:
AllowAllParametersOfDeclarationOnNextLine (bool)
If the function declaration doesn’t fit on a line, allow putting all parameters of a function declaration onto the next line even if
BinPackParameters is false.
true:
void myFunction(
int a, int b, int c, int d, int e);
false:
void myFunction(int a,
int b,
int c,
int d,
int e);
我正在查看 Clang-Format Style Options,但我找不到是否有以下选项。如果一个函数及其参数打破 ColumnLimit
我想在新行上继续参数。
// Good
SomeLongFunction(first_argument,
second_argument,
third_argument,
fourth_argument,
fifth_argument);
// Bad
SomeLongFunction(first_argument, second_argument, third_argument,
fourth_argument, fifth_argument);
看起来 AlignAfterOpenBracket
至少会让我配置在决定继续下一行时缩进的位置,但我找不到让我指定的东西来分解参数。
您可能想要:
BinPackParameters: false
有了这个,你的坏例子就被格式化成了好例子。文档:
BinPackParameters (bool)
If false, a function declaration’s or function definition’s parameters will either all be on the same line or will have one line each.
true: void f(int aaaaaaaaaaaaaaaaaaaa, int aaaaaaaaaaaaaaaaaaaa, int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {} false: void f(int aaaaaaaaaaaaaaaaaaaa, int aaaaaaaaaaaaaaaaaaaa, int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) {}
此外:
AllowAllParametersOfDeclarationOnNextLine: false
如果您希望中断所有参数,即使它们在一次中断后可以放在一行中,也可能很有用。文档:
AllowAllParametersOfDeclarationOnNextLine (bool)
If the function declaration doesn’t fit on a line, allow putting all parameters of a function declaration onto the next line even if BinPackParameters is false.
true: void myFunction( int a, int b, int c, int d, int e); false: void myFunction(int a, int b, int c, int d, int e);