stl 提供了6大元件,彼此之間可以組合套用,這6大元件分別是:
容器,演算法,迭代器,仿函式,介面卡,空間配置器
簡單介紹:
容器:各種資料結構,入vector,list, deque, set, map等,用來存放資料,從實現角度來看, stl容器是一種 class template.
演算法:各種常用的演算法,如 sort, find, copy, for_each. 從實現的角度來看,stl演算法是一種 function template.
迭代器:扮演了容器與演算法之間的膠合劑,共有五種型別,從實現角度來講,迭代器是一種將 operator*, operator->, operator++, operator–等指標相關操作予以過載的class template,所有的stl容器都附帶有自己專屬的迭代器,只有容器的設計者才知道如何遍歷自己的元素,原生指標也是一種迭代器.
仿函式: 行為類似函式,可作為演算法的某種策略,從實現角度看,仿函式是一種過載了operator()的class或者是 class template.
介面卡:一種專門用來修飾容器或者仿函式或者迭代器介面的東西
空間配置器:負責空間的配置和管理,從實現角度看,配置器是乙個實現了動態空間配置,空間管理,空間釋放的class template
stl 6大元件的互動關係:容器通過空間配置器取得資料儲存空間,演算法通過迭代器儲存容器中的內容,仿函式可以協助演算法完成不同的策略變化,介面卡可以修飾仿函式。
C STL簡單介紹
stl standard template library,標準模板庫 是c 對泛型程式設計思想的實現,最早是惠普實驗室開發的。在被引入c 之前該技術就已經存在了非常長的一段時間。後來stl成為ansi iso c 標準的一部分。各個 c 廠商也有各自對應的模板庫,這些庫效率可能非常高,但可移植性不...
C STL簡單介紹
5.容器演算法迭代器初識 stl大體分為六大元件,分別為 容器,演算法,迭代器,仿函式,介面卡 配接器 空間配置器 容器 各種資料結構 如vector,list,deque,set,map等,用來存放資料 演算法 各種常用的演算法 如sort,copy,for each等 迭代器 扮演了容器與演算法...
C STL 的簡單介紹
本篇文章內容基本 於c語言中文網,根據其內容進行簡化 留作自我複習使用 c 的標準模板庫 standardtemplatelibrary 是泛型程式設計最成功應用的例項 stl是一些常用資料結構和演算法的模板的集合 順序容器關聯容器容器介面卡 也簡稱容器 舉例 棧stack 佇列queue 優先佇列...