STL與標準庫

2021-08-22 15:43:21 字數 552 閱讀 6266

stl與標準庫

摘編自《extended stl》中譯

在c++的世界裡,stl這個術語是有歧義的。有很多c++純化論者會抓住一切機會糾正你對"stl"這個術語的錯用,而告訴你應該使用"標準庫"這樣的稱呼。

嚴格來說,stl指的是由stepanov和他的同事們在上世紀80年代到90年代開發的、基於六個核心概念的通用模板庫。這六個stl核心概念是:容器(container)、迭代器(iterator)、演算法(algorithm)、函式物件(function object)、介面卡(adaptor)和分配器(allocator)。但我們今天使用的術語"stl"泛指c++標準庫中與這六個概念相關的部分。

雖然標準庫中包含了許多原stl(stepanov與同事開發的版本)的內容,但卻(還)沒有全盤照搬。比方說c++03標準目前只定義了基於樹的關聯容器,而沒有包含原stl中基於hash表的關聯容器。儘管已經有建議要加入此類容器,並且會在下個c++標準發布時被採納,但眼下的狀況就是標準庫並非stl的超集。另一方面,標準庫中包含不屬於stl但卻與stl相容的元件,即iostreams。

參考:c++標準庫與stl的關係

STL 標準模板庫)

此篇只是乙個目錄,將分成單篇去完成 stl 主要有三個部分組成 容器,迭代器,演算法。順序容器 向量 vector 雙端佇列 dequeue 表 list ps copy 方法 關聯容器 集合 set 多重集合 multiset 對映 map 多重對映 multimap 容器介面卡 棧 stack ...

Stl(標準模板庫)

stl 標準模板庫 stl的目的是標準化元件,這樣就不用重新開發,可以使用現成的元件。我們常用到的stl容器有vector list deque map multimap set和multiset。1.簡單概括 如果需要高效的隨機訪問,不在乎插入和刪除的效率,使用vector 類似陣列 2 如果需要...

初識STL標準庫

簡要介紹 stl可分為容器 containers 迭代器 iterators 空間配置器 allocator 配接器 adapters 演算法 algorithms 仿函式 functors 六個部分。在c 標準中,stl被組織為下面的 17個頭檔案 algorithm deque function...