Sil*_*cer 5 c++ llvm clang-format
我尝试使用 clang-format(版本 6.0.0)重新格式化一些 C++ 代码。大多数事情似乎工作正常。但是我在构造函数初始化列表中失败了。
这就是我所拥有的:
A::A(const char* message) : B(message)
{
}
Run Code Online (Sandbox Code Playgroud)
这就是我要的:
A::A(const char* message) :
B(message)
{
}
Run Code Online (Sandbox Code Playgroud)
我尝试了一个带有两个选项的 clang 格式文件:
ColumnLimit: '160'
BreakConstructorInitializers: AfterColon
Run Code Online (Sandbox Code Playgroud)
这就是我得到的:
A::A(const char *message) : B(message) {}
Run Code Online (Sandbox Code Playgroud)
但我想在冒号后换行。
事实证明,删除该ColumnLimit选项(或将其设置为0)可以解决问题,并且我得到了我想要的格式。但我打算限制行长,所以我需要ColumnLimit.
我的错误在哪里?该ColumnLimit选项是否应该BreakConstructorInitializers以如此戏剧性的方式影响行为?或者这是一个错误?
更新:刚刚尝试了 7.0.1 版。结果一样。