笔记【数据结构】模板
模板:对具有相同特性的函数或类的再抽象。模板是一种参数化的多态工具。
模板分为:函数模板,类模板
函数模板的定义:
例:求绝对值功能的函数模板定义
#include<iostream.h>
template<typename T> //模板定义,T为模板参数
T abs(T a) { //定义函数模板
return
a<0?-a:a;
}
void main(){
int x=-12;
double y=12.5;
cout<<abs(x)<<endl;
cout<<abs(y)<<endl;
}
求最大值功能的函数模板的定义
#include <iostream.h>
template <class T>
T Max(T x,T y){
return (x>y)?x:y;
}
int main(){
int x1,y1;
float x2,y2;
dcout<<"请输入2个整型数据,用空格分隔:"<<endl;
cin>>x1>>y1;
cout<<"The max of x1,y1
is:"<<Max(x1,y1)<<endl;
//T为int
cout<<"请输入2个实型数据,用空格分隔:"