我的代码编译和运行得很好(到目前为止......),但是,由于 Visual Studio的Intellisense还不支持2012年CTP的编译器新增加的C++11功能。:
让大块完美的好代码(尽管是实验性的)用红色标示出来,往往会让我有点不爽。有没有办法告诉Intellisense忽略特定地方的错误?
谁能推荐一个已经提供适当语法高亮和检查这些新特性的IDE(特别是委托构造函数、初始化器列表和变量模板,这些都是让我着迷的)?
我对你很有信心 不能 做到这一点。
CTP只独立更新编译器,不更新Intellisense。Intellisense是基于EDG的前端,CTP不更新它(即使不管CTP,Intellisense和编译器有时也会因此产生分歧)。参见 这个Q&A在SO 澄清一下。
当然,你可以完全禁用Intellisense,但我认为这不是你所要求的。
转到
工具->选项->文本编辑->CC++->高级->Intellisense。
并将 "Disable Error Reporting "设置为true。
在VSCode中,你可以使用
#ifndef __INTELLISENSE__
// ... code to ignore - for example ...
__builtin_avr_delay_cycles(16 * 6 + 8); // converts to asm code
#endif
它确实会使编辑器中的那段代码变暗,这稍微有点烦人,但至少它不会报错,而且这段代码编译进去就好了。