我目前尝试使用格式化 C++/CLI 代码clang 格式(版本 9.0.0)。我不知道如何处理for each
声明。
Before:
for each (auto i in I)
{
}
之后(例如,Visual Studio 中的 CTRL-K/CTRL-D):
for
each (auto i in I)
{
}
I read here https://developercommunity.visualstudio.com/content/problem/364475/unwanted-clang-format-on-ccli.html this:
...您可能想要更改 ForEachMacros 以添加“对于每个”
我试过这个:
ForEachMacros:
- for each
- foreach
- Q_FOREACH
- BOOST_FOREACH
那么这个:
ForEachMacros:
- 'for each'
和这个:
- "for each"
甚至这个:
- "for\s+each"
什么都不起作用。有办法让它发挥作用吗?在文档中,写道(ForEachMacros
) 是宏的向量...所以我不明白如何创建一个内部带有空格字符的宏!
有人可以帮我解决这个问题吗?
Thanks!
您可以通过定义自己的宏来解决该问题,例如#define FOR_EACH for each
,并使用该宏而不是for each
. E.g. FOR_EACH(auto i in I)
.
现在 clang-format 将忽略它。
您可以将其添加到您的.clang-format
file, ForEachMacros: ['FOR_EACH']
,因此它被作为循环处理,而不是格式化的函数调用。但修复编译不需要。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)