我正在开发一个c ++项目,我正在使用它#pragma omp
.我使用精彩的clang格式来整理,但它总是删除所有预处理器指令的缩进.有没有办法改变这种行为?或者是否有其他格式化工具更值得推荐?或者我应该避免使用这些工具?
clang-format目前将所有pragma移动到第一列.clang格式之前的一个例子:
for (int i = 0; i < 4; ++i) {
#pragma UNROLL
// ...some code...
}
Run Code Online (Sandbox Code Playgroud)
clang格式后的相同代码:
for (int i = 0; i < 4; ++i) {
#pragma UNROLL
// ...some code...
}
Run Code Online (Sandbox Code Playgroud)
有没有办法让clang-format完全忽略pragma行而不改变源代码(即不会混淆源代码// clang-format off
)?例如使用正则表达式?
这与此问题有关(我希望避免安装第三方工具),并希望通过此错误报告解决.
另外,虽然clang-format off
对于带有pragma的行是受到尊重的,但是注释行本身将缩进到pragma 将缩进到的内容(使用clang-format 6.0.0):
for (int i = 0; i < 4; ++i) {
// clang-format off
#pragma UNROLL
// clang-format on
// ...some code...
}
Run Code Online (Sandbox Code Playgroud)