集成开发环境 (IDE)是一个软件,包含开发、编译、链接和调试程序所需的所有内容。
使用典型的 C++ IDE,您可以获得一个可以进行行编号和语法突出显示的代码编辑器。许多(但不是全部)IDE 都包含 C++ 编译器和链接器,IDE 将知道如何与其交互,以便将源代码转换为可执行文件。当您需要调试程序时,可以使用集成调试器。
此外,IDE 通常捆绑许多其他有用的编辑功能,例如集成帮助、名称完成、自动格式化,有时还捆绑版本控制系统。因此,虽然您可以单独执行所有这些操作,但安装 IDE 并通过单个界面访问它们要容易得多。
那么让我们安装一个吧!显而易见的下一个问题是“哪一个?”。许多 IDE 都是免费的,如果您想尝试多个 IDE,则可以安装多个 IDE。我们将在下面推荐一些大家都喜欢的。
为了充分发挥本教程的价值,我们建议安装带有支持 C++17 的编译器的 IDE。如果您仅限于使用仅支持 C++14 的编译器(由于教育或业务限制),大多数课程和示例仍然有效。
但是,如果您遇到使用 C++17(或更高版本)概念的课程,并且您使用的是较旧的语言编译器,则必须跳过它或将其转换为您的版本,这可能很容易,也可能不容易。您不应使用任何不至少支持 C++11(通常被认为是 C++ 的现代最低规范)的编译器。
我们建议安装最新版本的编译器。如果您无法使用最新版本,这些是支持 C++17 的绝对最低编译器版本:
- GCC/G++ 7
- Clang++ 8
- Visual Studio 2017 15.7
Visual Studio(适用于 Windows)
如果您在 Windows 10 计算机上进行开发,那么我们强烈建议您下载Visual Studio 2022 Community。
运行安装程序后,您最终会看到一个屏幕,询问您要安装什么工作负载。选择使用 C++ 进行桌面开发。如果不这样做,则 C++ 功能将不可用。
在屏幕右侧选择的默认选项应该没问题,但请确保选择了Windows 10 SDK(或Windows 11 SDK )。
Microsoft 仍然提供Visual Studio Express 2017 for Windows Desktop,您可以在页面底部找到它。Microsoft 不再支持该产品,并且它不具备许多较新的 C++ 语言功能,因此我们仅建议无法安装 Visual Studio Community 的用户使用它。
Code::Blocks(适用于 Linux 或 Windows)
如果您正在 Linux 上进行开发(或者您正在 Windows 上进行开发,但想要编写可以轻松移植到 Linux 的程序),我们推荐Code::Blocks。Code::Blocks 是一款免费、开源、跨平台 IDE,可在 Linux 和 Windows 上运行。
对于 Windows 用户
确保获取捆绑了 MinGW 的 Code::Blocks 版本(它应该是文件名以mingw-setup.exe结尾的版本)。这将安装 MinGW,其中包括 GCC C++ 编译器的 Windows 端口。
Code::Blocks 20.03 附带了过时的 MinGW 版本,仅支持 C++17(当前是最新版本 C++ 的后一个版本)。如果您想使用最新版本的 C++ (C++20),则需要更新 MinGW。为此,请按照以下步骤操作:
- 按照上述安装 Code::Blocks。
- 如果 Code::Blocks 打开,则关闭它。
- 打开 Windows 文件资源管理器(键盘快捷键Win-E)。
- 导航到您的 Code::Blocks 安装目录(可能是 C:\Program Files (x86)\CodeBlocks)。
- 将“MinGW”目录重命名为“MinGW.bak”(以防出现问题)。
- 打开浏览器并导航到https://winlibs.com/。
- 下载 MinGW 的更新版本。您可能需要Release Versions -> UCRT Runtime -> LATEST -> Win64 -> without LLVM/Clang/LLD/LLDB -> Zip archive下的版本。
- 将“mingw64”文件夹提取到您的 Code::blocks 安装目录。
- 将“mingw64”重命名为“MinGW”。
一旦确认更新的编译器可以工作,您可以删除旧文件夹(“MinGW.bak”)。
对于Linux用户
某些 Linux 安装可能缺少使用 Code::Blocks 运行或编译程序所需的依赖项。
基于 Debian 的 Linux 用户(例如 Mint 或 Ubuntu 上的用户)可能需要安装build-essential软件包。要从终端命令行执行此操作,请键入:
sudo apt-get install build-essential
Arch Linux 用户可能需要安装base-devel包。使用其他 Linux 变体的用户将需要确定其等效的包管理器和包是什么。
当您第一次启动 Code::Blocks 时,您可能会看到一个编译器自动检测对话框。如果这样做,请确保将GNU GCC 编译器设置为默认编译器,然后选择“确定”按钮。
问:如果收到“在 GNU GCC 编译器配置的搜索路径中找不到编译器可执行文件”错误,我该怎么办?
请尝试以下操作:
- 如果您使用的是 Windows,请确保您已下载 Code::Blocks WITH MinGW 版本。就是名字里带“mingw”的那个。
- 尝试进入设置、编译器,然后选择“重置为默认值”。
- 尝试进入设置、编译器、工具链可执行文件选项卡,并确保“编译器的安装目录”设置为 MinGW 目录(例如 C:\Program Files (x86)\CodeBlocks\MinGW)。
- 尝试完全卸载,然后重新安装。
- 尝试不同的编译器。
Visual Studio Code(适用于有经验的 Linux、macOS 或 Windows 用户)
Visual Studio Code(也称为“VS Code”,不要与类似名称的“Visual Studio Community”混淆)是代码编辑器,是经验丰富的开发人员的流行选择,因为它快速、灵活、开源,适用于多种编程语言,并且可用于许多不同的平台。
缺点是 VS Code 比此列表中的其他选项更难正确配置(在 Windows 上也更难安装)。在继续之前,我们建议您阅读下面链接的安装和配置文档,以确保您理解并熟悉所涉及的步骤。
对于Linux用户
应使用发行版的包管理器下载 VS Code。适用于 Linux 的 VS Code 说明涵盖了如何针对各种 Linux 发行版执行此操作。
安装 VS Code 后,请按照有关如何为 linux 配置 C++ 的说明进行操作。
对于 Mac 用户
适用于 Mac 的 VS Code 说明详细介绍了如何安装和设置适用于 macOS 的 VS Code。
安装 VS Code 后,请按照有关如何为 Mac 配置 C++ 的说明进行操作。
对于 Windows 用户
适用于 Windows 的 VS Code 说明详细介绍了如何安装和设置适用于 Windows 的 VS Code。
安装 VS Code 后,请按照有关如何为 Windows 配置 C++ 的说明进行操作。
其他 macOS IDE
其他流行的 Mac 选择包括Xcode(如果您可以使用)和Eclipse代码编辑器。默认情况下,Eclipse 未设置为使用 C++,您需要安装可选的 C++ 组件。
要避免的 IDE
您应该完全避免使用以下 IDE,因为它们至少不支持 C++11、根本不支持 C++,或者不再积极支持或维护:
- Borland Turbo C++ — 不支持 C++11
- Visual Studio for Mac——不支持 C++
- Dev C++——未积极支持
安装C++ IDE出现问题时怎么办
IDE 安装似乎会引起相当多的问题。安装可能会彻底失败(或者安装可能有效,但当您尝试使用它时,由于配置问题,IDE 会出现问题)。如果遇到此类问题,请尝试卸载 IDE(如果首先安装了它),重新启动计算机,暂时禁用防病毒或反恶意软件,然后再次尝试安装。
如果此时您仍然遇到问题,您有两种选择。更简单的选择是尝试不同的 IDE。另一种选择是解决问题。不幸的是,安装和配置错误的原因多种多样,并且特定于 IDE 软件本身,我们无法就如何解决此类问题提供有效建议。在这种情况下,我们建议将您遇到的错误消息或问题复制到您最喜欢的搜索引擎(例如 baidu 或 google)中,并尝试在其他地方找到遇到相同问题的人的论坛帖子。通常会有一些解决问题的建议。
C++ IDE相关问题
问:我可以使用基于 Web 的编译器吗?
您可以使用基于 Web 的编译器继续本教程。我们推荐以下其中一项:
- TutorialsPoint
- Wandbox (可以选择不同版本的GCC或Clang)
- Godbolt (可以看到装配)
基于网络的编译器非常适合涉足和简单的练习。然而,它们的功能通常非常有限——许多不允许您创建多个文件或有效地调试程序。如果可以的话,您会希望迁移到完整的 IDE。
问:我可以使用命令行编译器(例如 Linux 上的 g++)吗?
是的,但我们不建议初学者使用。您需要找到自己的编辑器并查找如何在其他地方使用它。使用命令行调试器并不像集成调试器那么容易,并且会使调试程序变得更加困难。
问:我可以使用其他代码编辑器或 IDE,例如 Eclipse、Sublime 或 Notepad++?
是的,但我们不建议初学者使用。有许多出色的代码编辑器和 IDE,可以配置为支持多种语言,并允许您混合和匹配插件以根据您的喜好定制您的体验。然而,许多编辑器和 IDE 需要额外的配置来编译 C++ 程序,并且在此过程中可能会出现很多问题。对于初学者,我们推荐一些开箱即用的东西,这样您就可以花更多的时间学习编码,而不是花更少的时间试图找出代码编辑器不能与编译器或调试器一起正常工作的原因。