编辑: hgtbkwd 2019-07-06
* C++STL泛型编程 (Generic Programming) * 为什么要采用泛型编程? 项目中,需要用到数组、链表、字符串、栈、队列、平衡二叉树等数据结构,以及排序、搜索等算法;

若全部自行编写比较麻烦;

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

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题