boost使用hpp文件介绍

查看boost的源代码,可以看到,boost都使用了hpp文件,为何要使用hpp文件呢?

什么是hpp文件

hpp文件就是把函数的声明和实现写在一个文件里面了,以往我们写c++代码时,会把函数的声明放在头文件.h中,函数实现放在.cpp文件中,而.hpp文件就相当于把声明和实现写在了一起。

再模板类中,由于模板两次编译的机制:
1.实例化前,先检查模板代码本身,查看语法是否正确。
2.实例化期间,检查模板代码,查看是否所有的调用都有效。
如果模板类的声明和实现分开写,直接包含头文件会出现找不到函数的情况,必须写在同一个文件中。

使用hpp文件好处

1.hpp 文件将定义和实现放在同一个文件,减少了文件的数量

2.无需再将 cpp 加入到项目中进行编译,将代码直接编译到调用者的 obj 文件,不再生成单独的 obj,大幅度减少编译次数,非常适合编写开源库

3.boost 库大量使用模板,采用 hpp 的形式可以保持与各个编译器更好的兼容性(C++ 模板不能把源文件和声明文件分开成两个文件)

相关面试题

Boost库中为什么大量使用hpp文件?基于什么考虑?

模板的实现可以写在.h文件中吗?

C++模板类代码只能写在头文件?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vegetablesssss

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值