c++类模板
2015-11-30 22:43
387 查看
对于类来说,如果有多各类的成员具有相似的形式,只是诸如数据类型不同,则可以考虑使用类的模板。
可以声明一个通用的模板类,它可以有一个或多个虚拟的模拟参数:
template <class 类型参数名>//声明模板类
class 具体类型参数名 //定义具体类
{
//...
}
下面是一个具体的实例:
template <class numtype>
//声明时要添加一行template<class numtype>
class Compare
{
public :
Compare(numtype a,numtype b)
{
x=a;
y=b;
}
numtype max()
{
return (x>y)?x:y;
}
numtype min()
{
return (x<y)?x:y;
}
private :
numtype x,y;
} //原有的类型名都改为numtype
而在使用的时候,要在尖括号里面添加具体的类型名:
Compare<double> cmp(2.3, 5.8);
在类的外面定义某个函数的时候:
template <class t>
t compare<t>::max()
{
}
本文转自:http://blog.chinaunix.net/uid-27177626-id-3939006.html
可以声明一个通用的模板类,它可以有一个或多个虚拟的模拟参数:
template <class 类型参数名>//声明模板类
class 具体类型参数名 //定义具体类
{
//...
}
下面是一个具体的实例:
template <class numtype>
//声明时要添加一行template<class numtype>
class Compare
{
public :
Compare(numtype a,numtype b)
{
x=a;
y=b;
}
numtype max()
{
return (x>y)?x:y;
}
numtype min()
{
return (x<y)?x:y;
}
private :
numtype x,y;
} //原有的类型名都改为numtype
而在使用的时候,要在尖括号里面添加具体的类型名:
Compare<double> cmp(2.3, 5.8);
在类的外面定义某个函数的时候:
template <class t>
t compare<t>::max()
{
}
本文转自:http://blog.chinaunix.net/uid-27177626-id-3939006.html
相关文章推荐
- 一起talk C栗子吧(第六十九回:C语言实例--DIY字符串查找函数)
- C++ 形参与实参的传递
- c++ 递归 8皇后
- C++ Tips and Tricks
- LeetCode_Best Time to Buy and Sell Stock II
- Inline Functions (C++)
- 2015杭电新生赛1005ACM组队安排【排列组合】【智商题】
- C语言学习笔记(18) 指针数组和数组指针分析
- 二、C++多态性
- 线性表排序(C语言版)
- C++ Tips and Tricks
- 凹入表示法(C语言版)
- 后序遍历首尾点(C语言版)
- 单链表实现就地逆转
- c语言头文件大全
- win编程实践(5)【c++】- 右值引用
- 中序遍历非递归算法(C语言版)
- LeetCode_Best Time to Buy and Sell Stock
- 使用开源C++项目WebSocketpp构建web服务器
- 二叉树镜像(C++版)