编辑: hgtbkwd | 2019-07-06 |
若全部自行编写比较麻烦;
ANSI C++中包含了C++ STL (Standard Template Library , 标准模板库,又称C++泛型库),定义了常用的数据结构和算法,使用十分方便.
有了STL,不必再从头写大多的标准数据结构和算法,并且可获得非常高的性能. 但这不意味着我们不需要掌握基本数据结构与算法;
相反,只有透彻理解了,才能更好的使用泛型! 泛型程序设计 由Alexander Stepanov和David Musser创立,于1998年被添加进C++标准.含义:编写不依赖于具体数据类型的程序.目标:将程序写得尽可能通用 .将算法从特定的数据结构中抽象出来,成为通用的.C++的模板为泛型程序设计奠定了关键的基础. STL (标准模板库, Standard Template Library)是泛型程序设计的一个范例. 代码重用(reuse)! * 函数模板模板函数的重载类模板堆栈类继承static成员友元 模板 函数模板简介 * 【引例】交换2个整数和交换2个浮点数的C++程序: //交换2个整数void Swap(int &a , int &b){ int tmp = 0;
tmp = a;
a = b;
b = tmp;
} //交换2个浮点数void Swap(float &a , float &b) { float tmp = 0.0;
tmp = a;
a = b;
b = tmp;
} int main(){ int a = 10, b=20;
float c = 1.2, d=2.4;
cout