小编jli*_*cht的帖子

告诉clang-format忽略编译指示

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)

c++ clang-format

10
推荐指数
1
解决办法
552
查看次数

在 CMake 中计算实数

我正在使用 CMake 配置使用configure_file.

其中一些脚本没有任何数学功能,因此我需要使用宏在 CMake 脚本中计算派生值math,例如:

math(EXPR EXAMPLE_BLOCK_SIZE "${EXAMPLE_SIZE} / ${EXAMPLE_BLOCK_COUNT}")
Run Code Online (Sandbox Code Playgroud)

不过好像math不支持浮点运算。如果我设置-DEXAMPLE_SIZE=2.5并且-DEXAMPLE_BLOCK_COUNT=2CMake 抛出错误:

math cannot parse the expression: "2.5 * 2": syntax error, unexpected
exp_NUMBER, expecting $end (2)
Run Code Online (Sandbox Code Playgroud)

有没有办法直接使用 CMake 宏计算实数?

如果没有,什么是实现这一目标的便携式方法?

cmake

5
推荐指数
1
解决办法
1147
查看次数

标签 统计

c++ ×1

clang-format ×1

cmake ×1