为何要学习STL:
数据结构与算法是编程的核心,STL中包含各种数据结构和优秀的算法,确实值得深入学习,本文中虽然着重使用,但希望有心的朋友能多看看相关数据结构的实现,对于C++语言确实会有较大帮助。
STL库有多个版本,我采用的是SGI版本,编译安装方法请参考如下链接:
http://blog.csdn.net/hong201/archive/2009/07/06/4322975.aspx
PS:按照网上孟岩老师的安装方法,我出现了一些问题,后来按照上面文章所说的安装成功。
关于为何采用SGI版本STL库,目前我并没有较深感触,网上的说法是:
1.开源
2.可读性强
3.自设了一些容器,如slist、hash_set等
谈点我的感觉:运用VC自带库使用set容器时,发现可以通过迭代器来改变set的元素,改变会破坏红黑树,但编译通过,这个是比较严重的BUG。
可以的话建议安装SGI版本的STL库。
在笔记中,我主要介绍各容器的用法,工具选用VC6.0。关于自定义类型数据如何使用容器,这个是许多人纠结的问题,我尽量写一些例子。
因为是新学C++,所以文中不可避免会存在错误的地方,希望大家批评指正。