使用Visual Studio 2022 创建C++项目
创建项目
- 依次选择菜单 文件 -> 新建 -> 项目,会弹出下图界面
- 如上图所示编程语言选择“C++”,系统平台选择“Windows”, 项目类型选择“控制台” 后,界面内容大概如下:
- 我使用的Visual Studio安装的组件有点多,大家的界面可能有所不同,可能没有这么多项。但截图中的1,2两项都有的。
- 1 是创建一个空的C++控制台应用程序,没有任何代码。控制台程序就是运行起来后有一个命令行窗口进行输入和输出,是没有图形界面的,只能通过键盘进行输入。具体怎么输入后面再讲。
- 2 也是创建一个C++控制台应用程序,但不是空的。Visual studio会生成一个编程界面著名“Hellow world!”程序的C++版本,哈哈。
- 这里我们选择第2个项目类型,生成一个Hello world 程序。然后点击右下角的“下一步”,会看到如下界面:
- 在这里设置项目基础属性
- 1 项目名称,也是最后生成的应用程序的可执行文件名。这个项目我们CppConsole好了,以可我们可能还会创建其他类型的项目。
- 2 项目在本电脑上存放的位置,可以点击右边的“…"按钮选择一个目录。
- 3 解决方案的名称。设置好之后如下图,点击”创建”按钮,一个简单的C++项目就创建好了。
- 这里简单介绍一下Visual Studio项目的组织结构:
- 最顶层是“解决方案”
- 第二层是“项目”,一个解决方案可以包含多个项目;
- 项目下面包含代码文件。
- Visual Studio会在你创建项目时选定的磁盘目录创建对应的目录和文件。这里不详细讨论了,以后创建复杂项目的时候再讨论。
运行第一个C++程序
C++控制台程序组成
C++控制台程序是Winows平台下最简单的C++程序。前面创建的项目已经是一个完整的项目了,是可以直接编译运行的。Visual Studio开发环境下C++控制台程序的组成部分见下图:
左边是解决方案-项目-项目文件的一个树形结构。这里对项目下面的几个子项稍微做一下说明:
- 1 引用,如果我们的项目有用到别的项目或库之类的就会添加在这里。不过目前没有,是空的。
- 2 外部依赖,这是我们程序必须要依赖的库和头文件等。这是Visual Studio自动为我们分析出来的,基本不用管理。感兴趣的朋友们可以自己打开看看。
- 3 头文件,如果们通过VS(Visual Studio以后都简称VS了)的菜单为项目添加了类,VS为自动把类对应的头文件(.h文件)放到这上目录下。但这是一个虚拟目录,只在VS的项目视图中存在,磁盘上不存这个目录的。
- 4 源文件,与头文件目录类似,也是一个虚拟目录,只不过这里放的是类实现文件(.cpp文件)
- 5 资源文件,一些复杂程序会用到像声音、图片、视频等可以认为是资源文件。我们目前不会用到,先不管它。等用到的时候再说。
- 6 另外说明一下,C++的头件不只有.h形式,源文件也不只有.cpp形式。不过在我的这系列笔记中会只用这两种形式。感兴趣的同学可以自己去搜索一下相关信息。
右边是已经打开的,这个项目唯一的一个代码文件,还是VS自动生成的。这个文件里目前只有三四行代码,但它却是一个完整的C++程序了。
在VS中编译C++程序
在VS中编译运行C++程序是非常简单的,VS帮我做了大多数的工作,避免了初学者在工具的使用上花费大量的时间。具体步骤如下:
- 点击主菜单上的“生成”菜单项,弹出如下子菜单:
- 这里我们两个选择:
- 一是“生成解决方案”,这会生成解决方案包含的所有项目。但是目前解决方案里只有一个项目,所效果与下面的生成当前项目是差不多的。
- 二是“生成当前项目”,菜单里显示的当前项目的名称。直接选择就行了。
VS的“生成”命令执行了前面笔记讲到的C++程序是怎么从源代码到可执行的程序的全部过程,如果我们的代码没有问题会直接生成可执行程序。这里我们就选“生成当前项目”,直接就可以成功生成一个控制程序了,就是这么简单。现在基本不会有任何问题,一定会成功。除非VS安装得有问题或者操作系统有问题,概率太小不要考虑了。
在VS中运行C++程序
在主菜单中选择“调试”菜单项,会弹出如下子菜单:
选择“开始运行(不调试)”,调试的事情以后再说。然后就会弹出一个控制台窗口,并显示“Hello world!"这句话
设置项目属性
以上就是在VS中创建、运行C++项目的全部过程。其实C++项目有很多属性需要设置,我们项目的属性都是VS自动设置的。一般对于初学者来讲,这已经足够了。但对我后续的笔记来说,这里一个选项需要我们手动来设置。那就C++标准,VS 2022目前默认的是C++14。我前面的笔记说过,后续都会基于C++20来讨论,所以这里改一下。具体修改步骤如下:
- 1 选择主菜单”项目“菜单项
- 2 选择”ntnt“子菜单,会弹出属性设置对话框:
- 在左侧选择”常规“项,然后将左右侧”C++语言标准“选项由默认的”c++14标准“改为”C++20标准“
总结
VS是一款强大的集成开发工具,有人称它为宇宙第一强IDE。当然这是个见仁见智的说法了。不过对于我们初学C++来讲,它确实很强大、很方便。
VS的“生成”命令执行了C++程序从源代码到可执行的程序的全部过程,包括预处理、编译和链接等过程。但是行业内也经常用”编译“这个术语来代替这个过程。所以在我后续的笔记中也会经常用编译来替代整个生成过程。如果有时候需要特指编译过程的时候,也会在当时的上下文中进行说明。