我已经在谷歌上搜索了一段时间了,但我似乎找不到任何明确的答案,如果它可以做到的话。
我想知道是否有可能在C++中以类似于这种类型的if的方式执行MultiLine #if语句
if (
1 == 1 ||
2 == 2 ||
3 == 3
) {
cout << "True\n";
}我希望有一些类似的东西(我知道这是无可救药的错误)
#if
1 == 1 ||
2 == 2 ||
3 == 3
#then
cout << "True\n";
#else
cout << "False\n";
#endif发布于 2019-07-05 16:09:02
#if \
1 == 1 || \
2 == 2 || \
3 == 3
cout << "True\n";
#else
cout << "False\n";
#endif反斜杠-换行符组合在预处理过程中非常早地就被剥离了,甚至在标记输入之前也是如此。您可以使用它将预处理器指令分布在多个物理线路上。
见鬼,理论上你甚至可以
#i\
f 1 == 1 |\
| 2 == 2 || 3 =\
= 3但是你的同事可能会生你的气。
发布于 2019-07-05 16:09:02
正确的用法如下。每个预处理宏可以在当前行的末尾使用\以多行的形式编写。cpp中没有#then关键字:)
#if \
1 == 1 || \
2 == 2 || \
3 == 3
cout << "True\n";
#else
cout << "False\n";
#endif发布于 2019-07-05 16:08:37
是的。使用连续行:
#if \
1 == 1 || \
2 == 2 || \
3 == 3
cout << "True\n";
#else
cout << "False\n";
#endifhttps://stackoverflow.com/questions/56899016
复制相似问题