更多课程 选择中心

C/C++培训
达内IT学院

400-111-8989

C++头文件包含的各种姿势,你知道不

  • 发布:C++培训
  • 来源:学习笔记
  • 时间:2017-11-14 16:14

当我们需要包含好几个外部引入的头文件的时候,我们如何分类并轻松的导入头文件呢?相信很多新手对于头文件导入还是不太清楚,以至于他们会将所有的文件名全部放入到一个文件夹中,然后将这个文件夹包含在项目里。

一方面,所有文件混在一起,让管理变得麻烦。虽然说是可以用,但是太不优雅了。另一方面,如果将各种头文件都分成多个文件夹存放,那就需要导入多个文件夹的路径。有没有更优雅又方便的做法呢?当然有,请往下看。

下面举例说明:

1.将所有头文件放在项目的一个文件夹里,那么此时只需要在项目中这样设置头文件目录

如上图所示,我们将所有的头文件放在了一个include目录下,设置的路径是项目当前路径的二级目录。如果你使用右侧的自动选择目录的功能,那么此处就会出现绝对的路径。这里写绝对路径是一个非常糟糕的做法,因为项目文件夹只要换了电脑,就崩溃了。各种头文件找不到。所以我们要设置为相对路径。相对路径是相对于cpp文件所在的第一层目录。

当然啦,很多更初级的新手,都不知道头文件还可以在这里设置,那就要好好实践一下咯。

此时,我们假如项目里包含了mysql、python等头文件,我们就只需要将这些头文件全部放在这个include目录下即可。然后代码中包含头文件只需要直接写头文件的名称即可。但是需要注意的是,如果两种头文件有同名的,那么不行了。此时就必须分成两个目录咯。

2.将头文件分成多个目录存放,然后都导入到项目中

如上图所示,我们这里是将三种头文件都放在include下,但是分了三个目录。然后在这里就可以导入三个目录即可。然后代码中依然只需要直接写头文件的名称即可。如下:

#include "python.h" #include "mysql.h"

但是这个有一个小缺点,那就是,每次增加一个类型的头文件的时候,我们就需要在这里添加一下头文件目录。虽然不多,但是还是有点麻烦。所以我们继续可以改进。

3.将所有头文件分类,但是只导入一个总目录

图还是和第一个一样,但是用法却有所改变。我们这里看到的还是一个总目录。不过,在总目录下又和第二种一样分了很多个子目录,分类存放不同的头文件。这样做了之后,我们在项目属性里只需要添加一个头文件,然后就万事大吉了。以后要添加其他的头文件,也创建一个子目录即可,项目属性了不需要改动。

需要改动的地方则是,代码包含头文件的写法。因为总目录被包含到项目了,所以,VS可以找到总目录。我们在写头文件包含的时候,就可以从总目录开始写。总目录就可以当做是一个起始目录。所以我们就要这样写头文件包含了:

#include "mysql/mysql.h" #include "python/Python.h"

相信这种写法在很多开源库中很常见,也是最推荐的一种。头文件包含时也很清楚的知道这个头文件是哪个目录的,而且也不长。在头文件管理的时候,一个目录就管了所有头文件。所以是非常方便的。

当然,这种写法新手很少用到,因为不知道,很少有人讲这些,只有无意中发现这样的文章,才知道这么回事。所以就分享一下。

本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:C++11新特性decltype修饰符
下一篇:C++必知必会读书笔记

C语言创建windows窗口实例

C++回调函数是什么?

C++ shared_ptr和动态数组

C语言有哪些关键词,C语言44个关键词大全

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

  • 搜索抖音号

    搜索抖音号:1821685962

    免费领取达内课程视频学习资料

Copyright © 2021 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省