C STL 11 vector原始碼剖析

2021-10-12 13:58:07 字數 360 閱讀 6582

特點:

通常,使用vector是最好的選擇,如果沒有什麼特殊要求,最好使用vector

與其他容器的比較:

vector

可變大小陣列。支援快速隨機訪問。在尾部之外的位置插入或刪除元素可能很慢

deque

雙端佇列。支援快速隨機訪問。在頭尾插入/刪除速度很快

list

雙向鍊錶。只支援雙向順序訪問。在list中任何位置進行插入和刪除的速度都很快

forward_list

單向鍊錶。只支援單向順序訪問。在鍊錶任何位置進行插入和刪除操作速度都很快

array

固定大小陣列。支援快速隨機訪問。不能新增或刪除元素

string

Vector原始碼理解

記錄元素的陣列 protected object elementdata 上面陣列的空間長度 protected int elementcount 有效元素數 protected int capacityincrement 構造方法中主要內容 this.elementdata new object ...

Vector原始碼分析

與arraylist一樣,vector的底層也是使用陣列elementdata進行儲存資料 protected object elementdata 當前elementdata陣列中元素的個數 protected int elementcount 當前elementdata陣列進行擴容的增量 pro...

Vector原始碼分析

說實話vector在工作中用的比較少,至少我沒有用到過。vector在面試中經常用來和arraylist進行比較,但凡知道 vector的都應該知道vector是執行緒安全的,而arraylist是執行緒不安全的,究其原因其實就是因為vector在增 改 刪操方法加了synchronized,利用鎖...