STL概念:
STL是C++標準庫的重要組成部分,STL(標準庫模板)不僅是一個可複用的組件庫,而且是一個包羅算法和數據結構的框架。
STL版本:
原始版本—Alexander Stepanov,Meng Lee在惠普實驗室完成原始版本,本着開源精神,他們申明允許任何人任意運用,拷貝,修改,傳播。商業使用這些代碼,無需付費。唯一條件就是也需要向原始版本一樣做開源聲明。
1.HP版本—也是所有STL餓始祖
2.PJ版本—由PJ.Plauger開發—Windows—VS
3.RW版本—由Rouge Wave公司開發
4.SGI版本—由Silicon Graphics Systems Inc公司開發—Linux
(ps:版本2和版本4是現在長用版本)
STL的六大組件:
1.容器—各種數據結構(vector,list,map,set等)
2.迭代器—扮演容器和算法的膠合劑
3.空間配置器—負責內存空間的分配與管理
4.配接器—一種修飾容器或者仿函數或者迭代器接口的東西
5.算法—各種常見的算法(sort,search,copy等)
6.仿函數(行爲類似函數的類,用作算法的某種策略)
STL容器—序列式容器&關聯式容器