數據結構與算法是編程的核心,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++,所以文中不可避免會存在錯誤的地方,希望大家批評指正。