IntelliSense 不可用的情况
更新:2007 年 11 月
在某些情况下,Intellisense 选项可能不会像预期那样工作。
光标上方存在代码错误
如果光标上方的代码中存在不完整的函数或其他错误,则 IntelliSense 可能无法分析代码元素,因而不会起作用。您可以注释掉相应的代码以重新启用 Intellisense。
光标在代码注释中
如果光标在源文件内的注释中,则 IntelliSense 选项不可用。
光标在字符串中
如果光标在某个字符串两边的引号之内,例如:
MessageBox( hWnd, "String literal|") )
则 IntelliSense 选项不可用。
自动选项被关闭
默认情况下,IntelliSense 是自动工作的,但可以禁用它。
即使禁用了自动语句完成,您仍然可以调用 IntelliSense 功能。
有关更多信息,请参见修改 IntelliSense 选项。
[C++] .ncb 文件有问题
如果位于项目目录的根目录下的无编译浏览器 (.ncb) 文件为只读或被损坏,则 IntelliSense 信息不可用。若要修复此问题,请执行以下操作:
关闭解决方案。
删除此 .ncb 文件。
重新打开解决方案。
重新打开解决方案将会创建一个新的 .ncb 文件。
[C++] 包含文件有问题
确保包含目录和包含文件的设置正确。使用 /I(附加的包含目录) 和 /INCLUDE(强制符号引用) 选项配置这些设置。
有关 include 指令的更多信息,请参见 The #include Directive和Using C++ Library Headers。
[C++] CLR 编程语法有问题
对于包含 Visual C++ 2005 或更高版本中的 CLR 编程语法的项目,必须使用 /clr 编译器选项。
对于包含 C++ 托管扩展语法(这是 Visual C++ 2005 之前的 CLR 编程语法)的项目,必须使用 /clr:oldSyntax 编译器选项。
有关更多信息,请参见 /clr(公共语言运行库编译)。