模板
模板是实现代码重用机制的一种工具,它可以实现数据类型的参数化,即将数据类型定义为参数,而由编译系统在处理具体函数调用时,根据实参类型来匹配函数模板中的对应形参并在确认后生成一个重载函数,从而真正实现代码重用。
C++中,允许用户构造函数模板,创建支持多种不同数据类型的形参但却具有通用功能的函数;也允许构造类模板,使的类中某些数据成员,成员函数的参数和返回值可以是任意数据类型。使用模板可以从一个函数生成多个函数或者从一个类模板生成多个类,建立一个模板后,编译器将根据使用时的实际数据类型使其实例化,生成可执行的代码,实例化的函数模板称为模板函数;实例化的类称为模板类。模板、模板函数、模板类以及对象关系如下:
模板使用方法:templete<<类型形参表》
<返回类型><函数名>(模板形参表){...}
模板函数的使用
using namespace std;
template <typename T>
T Power(T base,int exponent)
{
T value =base;
while(--exponent>0)
{
value*=base;
return value;
}
}
int main()
{
cout<<"18^1="<<Power(18,1)<<endl;
cout<<"5^3="<<Power(5,3)<<endl;
cout<<"2.6^7="<<Power(2.6,7)<<endl;
return 0;
}
结果:
本文总阅读量次