文件名称:标准模板库STL(Standard Template Library)指南
文件大小:87KB
文件格式:PDF
更新时间:2013-12-10 12:38:45
STL ,C++
1 介绍 1.1 动机 在七十年代末,Alexander Stepanov 第一个发现一些算法不依赖于数据结构的特定实现, 而仅仅和结构的一些基本语义属性相关。这些属性表达了一种能力,比如可以从数据结构的 一个成员取得下一个成员,从头到尾“走过”结构中的元素〔就象排序算法不关心元素是存 放在数组中或是线性表中)。Stepanov 研究过一些算法可以用一种抽象的方式实现,而且不 会影响效率。 1.2 STL 历史 1985 年,Stepanov 开发了基本Ada 库,有人要求他在C++中也这样做。但直到1987 年,模板(Template)在C++中还未实现,所以他的工作推迟了。1988 年,Stepanov 到HP 实 验室工作,并在1992 年被任命为一个算法项目的经理。在此项目中,Alexander Stepanov 和 Meng Lee 写了一个巨大的库---标准模板库(STL:Standard Template Library),意图定义一些 通用算法而不影响效率。现在STL 在国外已经成了新的编程手段。 1.3 STL 和ANSI/ISO C++草案标准 1994 年7 月14 日,ANSI/ISO C++标准化委员会将STL 采纳为草案标准。现在Microsoft Visual C++ 5.0 以上及Borland C++ 4.0 以上都支持STL。STL 已经并将继续影响软件开发的 方法,有了STL,程序员可以写更少且更快的代码,把精力集中在问题解决上,而不必关心