目录
关于hpp
什么是hpp文件
什么是 .hpp 文件?
在编写C++程序时,如果需要分模块,一般是会编写两个文件:
- ".h"文件,在里面放上函数的声明;
- ".cpp"文件,在里面添加函数的相关实现
hpp文件就是一种将头文件(.h)和实现文件(.cpp)合并在一起的文件类型。这种文件通常包含函数或类的声明以及它们的实现代码。
举例:
".h"文件:
// 头文件,包含函数声明
int add(int a, int b);
".cpp"文件:
// 实现文件,包含函数定义
#include "add.h"int add(int a, int b) {
return a + b;
}
合并后的".hpp"文件:
// 合并后的hpp文件,包含函数声明和定义
#ifndef ADD_HPP
#define ADD_HPP
int add(int a, int b) {
return a + b;
}
#endif // ADD_HPP
hpp文件有什么好处
在一个".h"一个".cpp"的情况下,一般是在.cpp中引用.h文件,使用的时候包含头文件,然后再把.cpp文件加到工程下编译即可。
不过,如果忘记将.cpp添加到当前工程下编译,就可能出现函数找不到的情况。
所以好处有:
-
减少文件数量:hpp文件将声明和实现合并在一个文件中,这样可以减少项目中文件的总数,简化文件管理。
-
简化编译过程:由于hpp文件中包含了代码的实现,因此无需将.cpp文件单独添加到项目中进行编译。代码直接编译到调用者的obj文件中,不再生成单独的obj文件,这样可以大幅度减少编译次数,提高编译效率。
-
提高开源库的兼容性:对于大量使用模板的库,如Boost库,采用hpp文件形式可以保持与不同编译器的更好兼容性。由于C++模板不能将源文件和声明文件分开成两个文件,hpp文件格式确保了模板的正确编译和使用。
clion中新建hpp文件
(1)对项目所在文件夹右键,依次点击"new" -> "C/C++ Header File"
(2)弹出的窗口中,点击设置
(3)弹出的窗口中,在Header Extension中下拉选择"hpp"后点击"ok"
(4)回到上一窗口,下拉选择"hpp"
效果如下:
以后要创建".h"还是".hpp"后缀的文件可以在这里更改
整理一遍更改hpp的步骤
(1)新建"C/C++ Header File"文件
(2)更改为".hpp"后缀