当使用2012年11月CTP特有的C++11特性时,有办法抑制Intellisense错误吗?

问题描述 投票:24回答:3

我的代码编译和运行得很好(到目前为止......),但是,由于 Visual Studio的Intellisense还不支持2012年CTP的编译器新增加的C++11功能。:

让大块完美的好代码(尽管是实验性的)用红色标示出来,往往会让我有点不爽。有没有办法告诉Intellisense忽略特定地方的错误?

谁能推荐一个已经提供适当语法高亮和检查这些新特性的IDE(特别是委托构造函数、初始化器列表和变量模板,这些都是让我着迷的)?

c++ visual-c++ c++11 visual-studio-2012 intellisense
3个回答
12
投票

我对你很有信心 不能 做到这一点。

CTP只独立更新编译器,不更新Intellisense。Intellisense是基于EDG的前端,CTP不更新它(即使不管CTP,Intellisense和编译器有时也会因此产生分歧)。参见 这个Q&A在SO 澄清一下。

当然,你可以完全禁用Intellisense,但我认为这不是你所要求的。


65
投票

转到

工具->选项->文本编辑->CC++->高级->Intellisense。

并将 "Disable Error Reporting "设置为true。


0
投票

在VSCode中,你可以使用

#ifndef __INTELLISENSE__
    // ... code to ignore - for example ...
    __builtin_avr_delay_cycles(16 * 6 + 8); // converts to asm code
#endif

它确实会使编辑器中的那段代码变暗,这稍微有点烦人,但至少它不会报错,而且这段代码编译进去就好了。

© www.soinside.com 2019 - 2024. All rights reserved.