IntelliSense 不可用的情况

更新:2007 年 11 月

在某些情况下,Intellisense 选项可能不会像预期那样工作。

光标上方存在代码错误

如果光标上方的代码中存在不完整的函数或其他错误,则 IntelliSense 可能无法分析代码元素,因而不会起作用。您可以注释掉相应的代码以重新启用 Intellisense。

光标在代码注释中

如果光标在源文件内的注释中,则 IntelliSense 选项不可用。

光标在字符串中

如果光标在某个字符串两边的引号之内,例如:

MessageBox( hWnd, "String literal|") )

则 IntelliSense 选项不可用。

自动选项被关闭

默认情况下,IntelliSense 是自动工作的,但可以禁用它。

即使禁用了自动语句完成,您仍然可以调用 IntelliSense 功能。

有关更多信息,请参见修改 IntelliSense 选项

[C++] .ncb 文件有问题

如果位于项目目录的根目录下的无编译浏览器 (.ncb) 文件为只读或被损坏,则 IntelliSense 信息不可用。若要修复此问题,请执行以下操作:

  1. 关闭解决方案。

  2. 删除此 .ncb 文件。

  3. 重新打开解决方案。

    重新打开解决方案将会创建一个新的 .ncb 文件。

[C++] 包含文件有问题

确保包含目录和包含文件的设置正确。使用 /I(附加的包含目录)/INCLUDE(强制符号引用) 选项配置这些设置。

有关 include 指令的更多信息,请参见 The #include DirectiveUsing C++ Library Headers

[C++] CLR 编程语法有问题

对于包含 Visual C++ 2005 或更高版本中的 CLR 编程语法的项目,必须使用 /clr 编译器选项。

对于包含 C++ 托管扩展语法(这是 Visual C++ 2005 之前的 CLR 编程语法)的项目,必须使用 /clr:oldSyntax 编译器选项。

有关更多信息,请参见 /clr(公共语言运行库编译)

请参见

其他资源

使用 IntelliSense