C++--------------------------------------------模板
2015-10-19 19:56
260 查看
模板template
1、对类型进行参数化的工具
2、使用:为类或者函数声明一种模式,使得类里面的成员变量或者成员函数的参数、返回值的数据类型可以任意
3、函数模板:只有参数类型、返回值不一样的函数
类模板:成员变量、成员函数类型不同的类
例子:比如A和B两个函数的功能完全一样,但是A进行的是int数据的处理,B进行float数据的处理,于是需要两个函数,但是使用模板的话就只需要一个函数
4、格式
函数:template<class T> void handler(T a, T b) { }
在这里,函数的形参是可以是模板类T里面的成员变量或者函数,但是需要注意的是,不能在调用函数的时候指定模板形参的类型,比如上面的函数,可以使用handler(2,5);或者handler(0.2,0.5),但是不能使用handler(int,int),或者可以int a,int b,再handler(a,b);
类: template<class T> class person
{
public :
T a;
T b;
T handler(T c ,T d);
};
创建类实例:person <int> person1; person <float> person2
在<>里面指定数据的类型,只能用int,float,这样的,不能用数值
1、对类型进行参数化的工具
2、使用:为类或者函数声明一种模式,使得类里面的成员变量或者成员函数的参数、返回值的数据类型可以任意
3、函数模板:只有参数类型、返回值不一样的函数
类模板:成员变量、成员函数类型不同的类
例子:比如A和B两个函数的功能完全一样,但是A进行的是int数据的处理,B进行float数据的处理,于是需要两个函数,但是使用模板的话就只需要一个函数
4、格式
函数:template<class T> void handler(T a, T b) { }
在这里,函数的形参是可以是模板类T里面的成员变量或者函数,但是需要注意的是,不能在调用函数的时候指定模板形参的类型,比如上面的函数,可以使用handler(2,5);或者handler(0.2,0.5),但是不能使用handler(int,int),或者可以int a,int b,再handler(a,b);
类: template<class T> class person
{
public :
T a;
T b;
T handler(T c ,T d);
};
创建类实例:person <int> person1; person <float> person2
在<>里面指定数据的类型,只能用int,float,这样的,不能用数值
相关文章推荐
- 雪*C语言核心知识总结五
- protobuf源码解析
- C语言的传值与传址调用
- C语言中的break、continue和goto三者的区别与用法
- C语言基础
- 三角形 算法第一集
- 学习C语言的数组
- C++STL学习(7)各种容器总结
- C语言强制类型转换
- 借刀杀对象--Raii技法(C++版)
- 《C++ Primer 5th》读书笔记3---关于类的构造函数
- 设计模式之工厂方法模式
- C语言 ## __VA_ARGS__ 宏
- 【C】用C语言提取bmp图片像素,并进行K-means聚类分析——容易遇到的问题
- C语言中没有string类
- C++入门学习——虚函数表介绍
- c++ 使用socket实现C/S端文件的下载传输
- Eclipse环境安装C/C++插件CDT和Eclipse安装的插件卸载(删除)
- STL中的map、unordered_map、hash_map
- xpp文件与cpp文件的区别