🚀 在 VS Code 中获取

Visual Studio Code 的 C/C++

Visual Studio Code 的 C/C++ 支持由 Microsoft C/C++ 扩展 提供,以在 Windows、Linux 和 macOS 上启用跨平台 C 和 C++ 开发。当您创建 *.cpp 文件时,该扩展会添加语法突出显示(着色)、智能完成和悬停(IntelliSense)以及错误检查等功能。

C++ language features

安装扩展

  1. 打开 VS Code。
  2. 选择活动栏上的“扩展”视图图标,或使用键盘快捷键(⇧⌘X (Windows, Linux Ctrl+Shift+X))。
  3. 搜索 'C++'
  4. 选择“安装”。

C/C++ extension

设置 C++ 环境

C++ 是一种编译语言,这意味着您的程序的源代码必须先经过翻译(编译),然后才能在您的计算机上运行。C/C++ 扩展不包含 C++ 编译器或调试器,因为 VS Code 作为编辑器依赖于命令行工具进行开发工作流。您需要安装这些工具或使用计算机上已安装的工具。

检查是否已安装编译器

注意:您的学术或工作开发环境可能已经提供了 C++ 编译器和调试器。请咨询您的讲师或同事,以获得有关安装推荐的 C++ 工具集(编译器、调试器、项目系统、linter)的指导。

某些平台上预装的常见编译器是 Linux 上的 GNU 编译器集合 (GCC) 和 macOS 上带有 XcodeClang 工具。

要检查是否已安装它们

  1. 使用 (⌃⇧` (Windows, Linux Ctrl+Shift+`)) 打开一个新的 VS Code 终端窗口

  2. 使用以下命令检查 GCC 编译器 g++

    g++ --version
    

    或使用此命令检查 Clang 编译器 clang

    clang --version
    

输出应显示编译器版本和详细信息。如果两者都未找到,请确保您的编译器可执行文件位于您的平台路径中(Windows 上为 %PATH,Linux 和 macOS 上为 $PATH),以便 C/C++ 扩展可以找到它。否则,请使用以下部分中的说明安装编译器。

安装编译器

如果您没有安装编译器,您可以按照我们的安装教程之一进行操作

Windows:

转到 MSVC 教程

转到 MinGW 教程

Linux:

转到 GCC 教程

macOS:

转到 Clang 教程

注意:如果您更喜欢完整的集成开发环境 (IDE),其中包含内置的编译、调试和项目模板(文件 > 新建项目),则有许多选项可用,例如 Visual Studio Community 版本。

示例:在 Windows 上安装 MinGW-x64

为了理解该过程,让我们通过 MSYS2 安装 Mingw-w64。Mingw-w64 是 Windows 上流行的免费工具集。它提供最新的 GCC、Mingw-w64 和其他有用的 C++ 工具和库的本机构建。

  1. 使用 此 MinGW 安装程序的直接链接 下载。

  2. 运行安装程序并按照安装向导的步骤操作。注意,MSYS2 需要 64 位 Windows 8.1 或更高版本。

  3. 在向导中,选择您所需的安装文件夹。记录此目录以供以后使用。在大多数情况下,建议的目录是可以接受的。当您进入设置开始菜单快捷方式步骤时,情况也是如此。完成后,确保选中“立即运行 MSYS2”框,然后选择“完成”。然后将自动打开一个 MSYS2 终端窗口。

  4. 在此终端中,通过运行以下命令安装 MinGW-w64 工具链

    pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
    
  5. 将显示可用软件包的列表

    MYSS2 Installer

  6. Enter 接受 toolchain 组中软件包的默认数量。

  7. 当系统提示是否继续安装时,输入 Y

  8. 通过使用以下步骤将 MinGW-w64 bin 文件夹的路径添加到 Windows PATH 环境变量

    1. 在 Windows 搜索栏中,键入“设置”以打开 Windows 设置。
    2. 搜索“编辑帐户的环境变量”。
    3. 在“用户变量”中,选择 Path 变量,然后选择“编辑”。
    4. 选择“新建”,然后将您在安装过程中记录的 MinGW-w64 目标文件夹添加到列表中。如果您选择了默认安装步骤,则路径为:C:\msys64\ucrt64\bin
    5. 选择“确定”,然后在“环境变量”窗口中再次选择“确定”以更新 PATH 环境变量。您必须重新打开任何控制台窗口,更新后的 PATH 环境变量才能可用。
  9. 检查您的 MinGW-w64 工具是否已正确安装且可用,打开一个新的命令提示符并键入

gcc --version
g++ --version
gdb --version

您应该看到输出,其中说明您已安装的 GCC、g++ 和 GDB 的版本。如果不是这种情况,请确保您的 PATH 条目与编译器工具所在的 Mingw-w64 二进制位置匹配,或参考故障排除部分

创建 Hello World 应用程序

为了确保编译器已正确安装和配置,让我们创建一个 Hello World C++ 程序。

创建 C++ 文件

  1. 在 Windows 上,启动 Windows 命令提示符(在 Windows 搜索栏中输入“Windows 命令提示符”)。在 macOS 和 Linux 上,您可以在终端中输入这些命令。
  2. 运行以下命令。它们正在创建一个名为 projects 的空文件夹,您可以在其中放置所有 VS Code 项目。接下来的命令将创建并导航到名为 helloworld 的子文件夹。从那里,您可以使用 code 命令直接在 VS Code 中打开 helloworld
mkdir projects
cd projects
mkdir helloworld
cd helloworld
code .

“code .”命令在当前工作文件夹中打开 VS Code,该文件夹将成为您的“工作区”。通过选择“是的,我信任作者”来接受工作区信任对话框,因为这是您创建的文件夹。

现在,使用文件资源管理器中的“新建文件”按钮或“文件”>“新建文件”命令创建一个名为 helloworld.cpp 的新文件。

File Explorer New File button

添加 Hello World 源代码

粘贴以下源代码

#include <iostream>

int main()
{
    std::cout << "Hello World" << std::endl;
}

现在按 ⌘S (Windows, Linux Ctrl+S) 以保存文件。您还可以通过选中主“文件”菜单中的“自动保存”来启用自动保存以自动保存您的文件更改。

运行 helloworld.cpp

  1. 确保您已打开 helloworld.cpp,使其成为编辑器中的活动文件。

  2. 按编辑器右上角的播放按钮。

    Screenshot of helloworld.cpp and play button

  3. 从系统上检测到的编译器列表中选择“C/C++: g++.exe 生成和调试活动文件”。

    C++ debug configuration dropdown

您只需在第一次运行 helloworld.cpp 时选择编译器。此编译器将成为 tasks.json 文件中设置的“默认”编译器。

  1. 生成成功后,您应该在集成的“终端”中看到“Hello World”字样。

    screenshot of program output

恭喜!您刚刚在 VS Code 中运行了您的第一个 C++ 程序!下一步是使用下一节中的教程之一,详细了解 Microsoft C/C++ 扩展的语言功能,例如 IntelliSense、代码导航、构建配置和调试。

教程

通过适用于您的环境的教程开始使用 C++ 和 VS Code

文档

您可以在 VS Code 网站的 C++ 部分下找到有关使用 Microsoft C/C++ 扩展的更多文档,您可以在其中找到有关以下主题的文章

C++ TOC on code.visualstudio.com

远程开发

VS Code 和 C++ 扩展支持远程开发,使您可以通过 SSH 在远程计算机或 VM 上、在 Docker 容器内或在适用于 Linux 的 Windows 子系统 (WSL) 中工作。

安装远程开发支持

  1. 安装 VS Code 远程开发扩展包
  2. 如果远程源文件托管在 WSL 中,请使用 WSL 扩展。
  3. 如果您通过 SSH 连接到远程计算机,请使用 Remote - SSH 扩展。
  4. 如果远程源文件托管在容器中(例如,Docker),请使用 Dev Containers 扩展。

使用 AI 增强完成

GitHub Copilot 是一种 AI 驱动的代码完成工具,可帮助您更快、更智能地编写代码。您可以使用 VS Code 中的 GitHub Copilot 扩展 来生成代码,或从其生成的代码中学习。

GitHub Copilot extension in the VS Code Marketplace

GitHub Copilot 为多种语言和各种框架提供建议,并且在 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++ 方面尤其出色。

您可以在Copilot 文档中了解有关如何开始使用 Copilot 的更多信息。

反馈

如果您遇到任何问题或对 Microsoft C/C++ 扩展有任何建议,请在 GitHub 上提交问题和建议。如果您尚未提供反馈,可以参加此快速调查