添加 true;
/false;
显然是有效的 C++ 代码。它编译并运行得很好。
类似地,对于 int;
、 void;
、 {}
(no ())、 1+1;
、 1 == 1;
,甚至只是 1;
之类的语句也是如此……为什么? (我使用的是 Visual C++)
最佳答案
为什么不?语言规范明确指出 C++ 中的表达式语句如下所示
<expression>;
这正是您在示例中所拥有的内容,例如
true;
或 1 == 1;
或 1;
。{}
只是一个空的复合语句。同时,
int;
格式错误。如果编译器悄悄地接受它,它必须是某种特定于编译器的怪癖/错误/扩展。关于c++ - 为什么 "true;"(和其他人)是有效的 C++ 代码行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31691444/