STL-什么是STL-使用STL的好处
标准模板库,由惠普实验室开发的一系列的标准化的组件,目前是C++的一部分。STL的代码广义上讲,分为三类:容器、迭代器、算法,容器和算法是通过迭代器无缝连接,string和wstring也是STL的一部分,内嵌在C++的编译器中。
特点:
数据结构(容器)和算法的分离,算法有一份即可,比如sort排序算法,即可用于vector,也可用于list等等。
高可重用性,STL中几乎所有的代码都采用了模板类和模板函数的方式实现,这相比于传统的由函数和类组成的库来说提供了更好的代码重用机会。
高性能,如map可以高效地从十万条记录中查找出指定的记录,因为map是采用红黑树的变体实现的(红黑树是平衡二叉树的一种)
高移植性,如在项目A上用STL编写的模块,可以直接移植到B项目上。
跨平台,如windows的VS编写的代码可以在Mac OS的XCode上直接编译。