C++ 模板
泛型程序设计与模板: 一种算法在实现时不指定具体要操作的数据的类型的程序设计方法。所谓"泛型"是指算法只要实现 一遍,就能适用于多种数据类型。泛型程序设计方法的好处在于能够减少重复代码的编写。 在C++中模板分为函数模板和类模板两种。 函数模板: 作用:面向对象的继承和多态机制有效的提高了程序的可重用性和可扩充性,但在可重用性的 某些方面,程序员还希望得到更多的支持,以减少重复代码的编写。 // 例如:Swap函数 void Swap(int &a, int &b){ int c = a; a = b; b = c; } void Swap(double &a, double &b){ double c = a; a = b; b = c; } template <typename T> void Swap(T &a, T &b){ T c = a; a = b; b = c; } 在编写Swap函数时,在面对不同的数据类型,我们需要编写不同的重载函数,但这些函数初处了所处理的 数据类型的不同,形式上是一模一样的,为了减少这些重复代码的编写,继承和多态明显无法解决这些问 题。因此,"模板"的概念就应运而生。 函数模板的写法: template <typename 类型参数1,类型参数2,...> 返回值类型 模板名(形参表){ 函数体; }