(原)STL中vector的疑問

2021-09-06 21:17:28 字數 442 閱讀 5211

以前基本上沒有用過stl,當然包括裡面的vector。今天試驗了一下。

主要看了這個**:

**很簡單,就不貼了。也沒使用到多少函式,主要使用的就是push_back、size、at這三個。然後想到了清空記憶體,網上的說法都是:

vector ().swap(variable);

不是很明白的有如下點:

1. 為何沒有使用

variable.~vector();

這個函式?

2.我測試的時候,發現即使不清空記憶體(不呼叫swap或者~),程式記憶體也沒有增加(跑了幾百次,每次要使用0.3m的記憶體,這樣如果程式沒有釋放的話,即便跑了500次,增加的記憶體也會有150m了,但是在任務管理器裡面沒有看到記憶體明顯增加,一直是6-7m之間變化)。

等以後更加深入的使用vector的時候再說吧。這個先留著了。

STL中vector的使用

作用 它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。vector在c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。特別注意 使用vector需要注意以下幾點 1 如果你要表示的向量長度較長 ...

STL中vector的使用

vector是標準模板庫中我們經常使用的容器,它與陣列類似,它擁有一段連續的記憶體空間,並且起始位址不變,因此它能很好的支援隨機訪問 使用操作符訪問其中的元素 但由於它的記憶體空間是連續的,所以在中間進行插入和刪除操作會造成記憶體塊的拷貝 複雜度為o n 另外,當該陣列的記憶體空間不夠時,需要重新申...

STL中的向量 vector

向量 vector 是乙個封裝了動態大小陣列的順序容器 sequence container 跟任意其它型別容器一樣,它能夠存放各種型別的物件。可以簡單的認為,向量是乙個能夠存放任意型別的動態陣列。當程式設計師無法知道自己需要的陣列的規模多大時,用 vector 來解決問題可以達到最大節約空間的目的...