Visual Studio 代码/C++:Intellisense 不显示方法文档的快速信息(签名帮助)

Visual Studio Code / C++ : Intellisense not showing quick info with method documentation (signature help)

我最近为我的 C++ 项目安装了 VSCode。这是一个很棒的工具,非常轻便,易于使用,安装 C++ 专用扩展也没有问题。但是我在检查了一些关于 VSCode 的 videos/documentation 之后意识到,IntelliSense 在我的环境中没有完全工作。到目前为止,我使用过的大多数 IntelliSense 功能都运行良好……除了显示方法随附文档的“快速信息”功能(签名帮助)。正如我使用 VSCode 从 C++ tutorials/videos 中看到的那样,在编写扩展到侧面参数信息的方法时,我应该有一个快速信息蓝色图标。

在我的例子中,没有快速信息蓝色图标,只有参数名称或简短信息。几天以来,我一直在弄清楚为什么我的 VSCode 无法提供签名帮助功能。我也尝试过使用 C#,但我得到了相同的行为...

所以我前往 Whosebug 社区寻求帮助。我在网上看到了很多关于 VScode 的事情,但与我的问题无关。

我的配置:

UserSettings:

"editor.detectIndentation": false,
"editor.multiCursorModifier": "alt",
"workbench.iconTheme": "vscode-icons",
"workbench.view.alwaysShowHeaderActions": true,
"C_Cpp.updateChannel": "Insiders",
"editor.insertSpaces": false,
"editor.minimap.maxColumn": 100,
"editor.minimap.size": "fill",
"editor.tabSize": 4,
"task.saveBeforeRun": "never",
"window.closeWhenEmpty": true,
"workbench.colorTheme": "Default Light+",
"workbench.editor.closeEmptyGroups": false,
"workbench.editor.showTabs": true,
"workbench.settings.editor": "json",
"workbench.settings.openDefaultSettings": true,
"workbench.settings.useSplitJSON": true

图片示例:

My working Environment without quick info blue icon

C++ example with quick info blue icon (来源:https://www.youtube.com/watch?v=3Tc6f3nhCxo

提前感谢您的帮助!

有关更多详细信息,这里有一些 c++ IntelliSense 设置

> "C_Cpp.autocomplete": "Default",
  "C_Cpp.default.intelliSenseMode": "",
  "C_Cpp.intelliSenseCachePath": "",
  "C_Cpp.intelliSenseEngine": "Default",
  "C_Cpp.intelliSenseEngineFallback": "Disabled"

我终于解决了 VS 代码配置中的 Intellisense 问题!

现在,当我开始输入函数、方法或其他内容时,会显示“快速信息”功能。

安装 xcode macOS 应用程序并通过 Homebrew 更新 gcc 版本后已修复(见附图)。

gcc version 10.2.0 on Homebrew

my cpp configuration (c_cpp_properties.json)

希望它可以帮助其他有相同 Intellisense 问题的人显示方法的随附文档(签名帮助)。

遇到同样的问题,让 VS Code C++ IntelliSense Quick Info 在 Mac M1 (arm64) 上工作,而无需安装 Xcode 个人原因(大且不需要)。

简单地使用 homebrew 提供的 gcc 就可以了。

确保先安装Homebrew,如果没有安装

然后安装gcc

brew install gcc

.vscode 中打开 c_cpp_properties.json 文件 目录并将 compilerPath 值替换为来自自制软件的值。

"compilerPath": "/opt/homebrew/Cellar/gcc/11.2.0/bin/g++-11"

在我的例子中,这是版本为 11.2.0 的 gcc-11。您的可能不同,因此请从 brew install gcc 输出中确认或手动确认。

(此解决方案应该适用于 MacOS,并且不仅限于 M1。)