【发布时间】:2014-06-25 16:33:46
【问题描述】:
替代标记是 valid c++ keywords,但在 Visual Studio 2013 中会发出编译错误(未声明的标识符):
int main(int argc, const char* argv[])
{
int k(1), l(2);
if (k and l) cout << "both non zero\n";
return 0;
}
and or not 已经存在很长时间了,是否有理由不实施它们?
【问题讨论】:
-
错误信息是什么究竟?
-
我想知道为什么会这样。这不可能是实现的复杂性,如果他们害怕破坏旧代码,同样应该适用于 gcc 等。一个简单的 grep/replace 就可以解决他们的任何代码库冲突,那么是否有更深层次的原因,是幕后有争议还是只是一个没人关心的功能?
-
@NikosAthanasiou 一个简单的 grep/replace 可能会搞砸很多 cmets。
-
GCC 通常比 MSVC 在以符合标准的名义破坏旧代码方面更多更随意。
标签: c++ visual-c++