Cor*_*ory 1 c++ visual-c++ c++11 visual-studio-2012
我为Visual Studio 2012下载并安装了Microsoft的预发行版C++编译器.我的项目所有配置的平台工具集设置为:"Microsoft Visual C++编译器2012年11月CTP(v120_CTP_Nov2012)".
这允许我的项目使用Microsoft在其预发行版中实现的新C++ 11功能.使用新功能的代码编译和运行完全正常,但我仍然得到红色下划线波浪,好像我的代码有错误.
到目前为止,我最好的选择是完全禁用"C/C++ Squiggles".有什么方法可以让Visual Studio 2012意识到我正在使用v120进行编译,并相应地进行波形化?
以下代码按预期运行:
int values[] {4, 3, 2, 1, 0};
for(int i : values)
{
std::cout << i << ' ';
}
Run Code Online (Sandbox Code Playgroud)
它产生输出:
4 3 2 1 0
但是,Visual Studio 2012 使用工具提示强调了波浪形红色的第一个值:
int values []
错误:不允许不完整的类型
您没有使用v120进行编译.您正在使用v120 CTP进行编译.CTP代表"社区技术预览 ","预览"位的一部分是Intellisense无法识别任何新构造.此行为实际上是针对CTP设计的,不会修复,也没有解决方法.
您将不得不等待Microsoft完成错误修正CTP并将其作为正确的更新发布,这可能包含对新功能的Intellisense支持.