STL--概述:
标准模板库(StandardTemplateLibrary,STL),是C++程序设计语言标准模板库。STL是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。虽然它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。
STL是所有C++编译器和所有操作系统平台都支持的一种库,包含了很多在计算机科学领域里所常用的基本数据结构和基本算法,为广大C++程序员提供了一个可扩展的应用框架,高度体现了软件的可复用性。
对所有的编译器来说,提供给C++程序设计者的接口都是一样的。也就是说同一段STL代码在不同编译器和操作系统平台上运行的结果都是相同的,但是底层实现可以是不同的,使用者并不需要了解它的底层实现。
使用STL的应用程序保证得到的实现在处理速度和内存利用方面都是高效的,因为STL设计者们已经考虑好了。
使用STL编写的代码更容易修改和阅读。因为代码更短,很多基础工作代码已经被组件化了;使用简单,虽然内部实现很复杂。
STL是建立在模板函数和模板类基础之上的功能强大的库。
模板函数可以实现一般化的常用算法(如统计、排序、查找等)
模板类可以实现支持几乎所有类型的容器,用来实现常用的数据结构(如链表、栈、队列、平衡二叉树等)
STL 头文件一览表:
头文件 |
内容 |
头文件 |
内容 |
<iterator> |
迭代器 |
<vector> |
向量 |
<utility> |
辅助功能 |
<deque> |
双头队列 |
<memory> |
内存管理 |
<list> |
链表 |
<algorithm> |
算法 |
<set> |
集合与多重集合 |
<functional> |
函数对象 |
<map> |
映射与多重映射 |
<numeric> |
数值运算 |
<stack> |
栈 |
<queue> |
队列与优先队列 |
时间: 2024-10-19 11:46:13