听起来很愚蠢,但多年来我一直想不出需要它的用例。快速的谷歌搜索也没有发现有什么有价值的信息。
从记忆中,Bjarne Stroustrup提到过一个用例,但我找不到参考资料了。
那么为什么C语言不能拥有这个特性:
int val = 0;
if val
doSomehing();
else
doSomehinglse();
我可以接受“我们懒得为词法分析器添加支持”的理由,我只想弄清楚这个语法是否会破坏其他语言结构。考虑到 C/C++ 有多少奇怪的语法特性,我几乎认为这不会增加太多复杂性。