C STL庫學習筆記(一) STL初識

2021-09-10 08:21:24 字數 604 閱讀 3703

容器(container),是一種資料結構,如list,vector,和deques ,以模板類的方法提供。為了訪問容器中的資料,可以使用由容器類輸出的迭代器;

迭代器(iterator),提供了訪問容器中物件的方法。例如,可以使用一對迭代器指定list或vector中的一定範圍的物件。迭代器就如同乙個指標。事實上,c++的指標也是一種迭代器。但是,迭代器也可以是那些定義了operator*()以及其他類似於指標的操作符地方法的類物件;

演算法(algorithm),是用來操作容器中的資料的模板函式。例如,stl用sort()來對乙個vector中的資料進行排序,用find()來搜尋乙個list中的物件,函式本身與他們操作的資料的結構和型別無關,因此他們可以在從簡單陣列到高度複雜容器的任何資料結構上使用;

仿函式(function object,仿函式(functor)又稱之為函式物件(functionobject),其實就是過載了()操作符的struct,沒有什麼特別的地方

迭代介面卡(adaptor)

空間配製器(allocator)其中主要工作包括兩部分1.物件的建立與銷毀    2.記憶體的獲取與釋放

C STL初識 學習筆記

一.stl六大元件 1.容器 各種資料結構,如vector list deque set map等 2.演算法 各種常用的演算法,如sort find copy等 3.迭代器 容器與演算法間的膠合劑 4.仿函式 行為類似函式,可作為演算法的某種策略 5.介面卡 一種用來修飾容器或者仿函式或迭代器介面...

C STL學習筆記一

資料結構與演算法是程式設計的核心,stl中包含各種資料結構和優秀的演算法,確實值得深入學習,本文中雖然著重使用,但希望有心的朋友能多看看相關資料結構的實現,對於c 語言確實會有較大幫助。ps 按照網上孟巖老師的安裝方法,我出現了一些問題,後來按照上面文章所說的安裝成功。關於為何採用sgi版本stl庫...

STL庫學習筆記(一) 什麼是STL?

小明是乙個很牛逼的程式設計師,在國際標準化組織工作。他現在正在設計新一代的c 標準,標準中有乙個待實現的函式 findmax 這個函式要求使用者輸入任何型別的資料,他都能找到最大的乙個。於是他想到了這個 int findmax int a,int b else char findmax char a...