gpt4 book ai didi

clang 格式缩进函数参数/参数总是带有 4 个空格

转载 作者:太空宇宙 更新时间:2023-11-04 03:36:21 28 4
gpt4 key购买 nike

我在 clang-format 结果方面遇到了一些麻烦。顺便说一句,我正在使用 v3.8.0.246435。

考虑以下代码示例:

if(foo)
{
bar();
foobar(
arg1,
arg2,
arg3,
arg4,
arg5,
arg6);
}

在上面的代码中,所有内容都缩进了 3 个空格。现在,如果我在此代码上运行 clang-format(请参阅我的帖子底部以了解我的 clang-format 配置),我会得到以下输出:

if(foo)
{
/*V 3 spaces here */
bar();
foobar(
arg1,
arg2,
arg3,
arg4,
arg5,
arg6);
/*^ 4 spaces here */
}

我发现这是一个非常奇怪的行为。我想要在整个代码中使用相同的缩进级别。似乎 clang-format 总是将函数参数/参数缩进 4 个空格,无论 IndentWidth 的值是多少。有没有办法覆盖这种行为?或者这是一个错误?

我的 clang 格式配置文件:

Language: Cpp
SpaceBeforeParens: Never
SpacesInParentheses: false
SpaceAfterCStyleCast: true
SpacesInSquareBrackets: false
AllowShortIfStatementsOnASingleLine: false
PointerAlignment: Right
AlignOperands: true
AlignConsecutiveAssignments: true
AlignAfterOpenBracket: false
UseTab: Never
IndentWidth: 3
TabWidth: 3
ColumnLimit: 100
MaxEmptyLinesToKeep: 4
KeepEmptyLinesAtTheStartOfBlocks: false
BreakBeforeBraces: Stroustrup
BinPackArguments: false
BinPackParameters: false
AllowShortFunctionsOnASingleLine: None
AlignEscapedNewlinesLeft: true

最佳答案

其实我发现是少了哪个命令。你必须添加

ContinuationIndentWidth: 3

或者你想要的任何数字,以便它按照你想要的方式缩进连续的行。默认为 4。

关于clang 格式缩进函数参数/参数总是带有 4 个空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32392521/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com