元件描述
容器(containers)
容器是用來管理某一類物件的集合。c++ 提供了各種不同型別的容器,比如 deque、list、vector、map 等。
演算法(algorithms)
演算法作用於容器。它們提供了執行各種操作的方式,包括對容器內容執行初始化、排序、搜尋和轉換等操作。
迭代器(iterators)
迭代器用於遍歷物件集合的元素。這些集合可能是容器,也可能是容器的子集。
// 改變陣列容量的大小
void
resize
(int newcapacity)
// 向陣列中新增乙個元素
void
push_bakc
(t e)
// 從陣列中刪除乙個元素
t pop_back()
隨機訪問
插入和刪除
適用場景
int
main()
vector<
int>
::iterator iter = vec.
begin()
;// 插入元素時,迭代器失效
vec.
push_back(0
);cout <<
&vec[0]
<< endl;
// 陣列擴容後,首位址已經改變
//cout << *iter << endl;
// 刪除元素時迭代器失效
for(iter = vec.
begin()
; iter != vec.
end();
) cout <<
*iter << endl;
iter++;}
return0;
}
缺點:
unordered_map,其底層是乙個雜湊表
缺點如下:
作用使用
int
test_allocator_1()
// 記憶體釋放
alloc.
deallocate
(p, n)
;return0;
}
C 面試基礎知識整理(1)
檔案重定義 條件編譯 github c 面試基礎知識總結 預處理,根據檔案中的預處理指令來修改原始檔的內容。如 include指令,作用是把頭檔案的內容新增到.cpp檔案中,產生.ii檔案,編譯,將其翻譯成等價的中間 或彙編 產生彙編檔案 s檔案 彙編,把組合語言翻譯成目標機器指令,產生目標檔案 o...
C 基礎知識整理 基礎知識(8) 介面
前面接觸了抽象類,它的特點是子類必須實現abstract修飾的方法。以及還有virtual修飾的方法,virtual修飾的方法子類可以重寫也可以不重寫而直接使用。但是由於c 也是單繼承的,所以定義乙個父類,然後繼承來擴充套件一些類的時候,會遇到不合適的情況。因為我們程式設計師是用程式語言來描述世界的...
C語言基礎知識整理8陣列
一批具有同名的同屬性的資料就組成乙個陣列 array 陣列右下角的數字稱為下標。陣列是一組有序資料的集合,下標代表資料在陣列中的序號 用乙個陣列名 如s 和下標來唯一地確定陣列中地元素 陣列中地每乙個元素都屬於同乙個資料型別。c語言規定用方括號中的數字來表示下標。陣列名作實參,傳遞的是陣列首位址,實...