函数模板的载体-HPP
来源:互联网 发布:数控g73编程实例有图 编辑:程序博客网 时间:2024/04/28 19:09
在C++中,我们通常将声明放在.h头文件中,将具体的实现代码放在.cpp文件中。但是函数模板通常不这么做,函数模板是将其声明和实现都放在.hpp文件中。hpp是Header Plus Plus的缩写,是专门存放模板文件的格式。可能有人会问,为什么要将函数模板的声明和实现放在一个头文件中?这是因为当编译器读到函数模板的实现时,因为没有具体的模板参数,所以还不能为它创建一个函数实例,只有当使用这个函数模板的时候,才会为它创建一个具体的函数实例;所以,对于编译器而言,函数模板的实现其实也是一种声明,是声明如何构建一个模板函数的方法。
在前面的几章中,我们都是将函数模板和主函数放到了一个cpp文件中,但是在实际的工作中,都是将函数模板和主函数相分离的。今天,我们就使用HPP文件来实现函数模板和主函数相分离的目标。
例1 使用HPP文件实现模块化编程
Add.hpp文件
#ifndef _ADD_HPP_#define _ADD_HPP_template<typename T>T Add(T t1, T t2){return t1 + t2;}#endif主文件
#include<iostream>#include "Add.hpp"using namespace std;void main(){int nRet = Add<int>(1,2);cout << "和:" << nRet << endl;}运行效果如图1所示:
图1 使用HPP文件实现模块化编程
例1中,我们首先在Add.hpp文件中创建了一个函数模板Add.hpp,之后在主文件中使用include包含Add.hpp文件,这样就可以实现函数模板和主函数的分离效果了,也就是所谓的模块化编程思想。
今天我们主要讲述了函数模板的载体和在实际的工作中,如何将函数模板和主函数分离的方法,从而实现模块化编程的目标。大家可以回去实践一下,加深体会。
0 0
- 函数模板的载体-HPP
- 参数个数不同的函数载体(C++)
- 类模板的类外实现与hpp文件
- hpp文件解决类成员函数重复定义的问题
- 我们是科技的载体
- 陌生是我们的载体
- c++的.hpp文件
- solver_factory.hpp的理解
- c++中类模板、hpp文件、与预编译相关的#ifndef#define#endif 相关
- HPP
- hpp
- hpp
- .hpp
- HPP
- HPP
- hpp
- boost准模板库 timer.hpp使用
- boost准模板库progress.hpp使用
- github 收集2
- 数塔
- Apache POI Data Formats
- oracle函数trunc的使用
- hbase奇怪问题现场
- 函数模板的载体-HPP
- 黑马程序员_Eclipse工具配置
- C/C++从入门到高手所有必备PDF书籍
- Java中的Mongodb单元测试
- hdu 1251 统计难题(字典树)
- 移动互联网终端的touch事件,touchstart, touchend, touchmove
- Oracle 导入本地dmp文件 详细操作步骤
- 取石子 博弈
- cookie在vs重新run的时候丢失