VS中C++头文件包含的各种方式

    当我们需要包含好几个外部引入的头文件的时候,我们如何分类并轻松的导入头文件呢?相信很多新手对于头文件导入还是不太清楚,以至于他们会将所有的文件名全部放入到一个文件夹中,然后将这个文件夹包含在项目里。
    一方面,所有文件混在一起,让管理变得麻烦。虽然说是可以用,但是太不优雅了。另一方面,如果将各种头文件都分成多个文件夹存放,那就需要导入多个文件夹的路径。有没有更优雅又方便的做法呢?当然有,请往下看。
    下面举例说明:

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

        

图片

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

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

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

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

        

图片

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

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

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

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

        

图片

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

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

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

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

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

参考:https://mp.weixin.qq.com/s/pL4-BKhXiXJtB9fAbPRESg

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值