若一个程序的功能是对某种特定的数据类型进行处理,则将所处理的数据类型说明为参数,那么就可以把这个程序改写成为模版,模版可以让程序对任何其他数据类型进行同样方式的处理。
本节主要是说一下C++的函数模版,函数模版的定义一般形式是:
template <类型形式参数表> 返回类型 函数名(形参)
{
//函数实现
}
看一个实例:
#include <cstdio> #include <iostream> using namespace std; //函数模板 template <class T> T max(T & a, T & b) { return a < b ? a : b; } int main(void) { int x, y; x = 1; y = 4; cout << "max = " << max<int>(x, y) << endl; cout << "max = " << max<double>(1.234, 5.567) << endl; cout << "max = " << max(21.234f, 51.567f) << endl; return 0; }运行结果:
max = 1
max = 5.567
max = 51.567
Engineer-Bruce_Yang 认证博客专家 嵌入式硬件 单片机 arm开发 本科毕业于华南理工大学,现美国卡罗尔工商管理硕士研究生在读,曾就职于世界名企伟易达、联发科技等,多年嵌入式产品开发经验,在智能玩具、安防产品、平板电脑、手机开发有丰富的实战开发经验,现任深圳市云之手科技有限公司副总经理、研发总工程师。