C STL Vector簡單講解

2021-06-23 06:03:13 字數 1837 閱讀 1883

線性容器,內儲存資料的型別相同

優點:快速訪問資料;動態擴充套件容量;資料連續儲存,空間利用率高;

缺點:資料插入時間代價高;動態增加容量時,時間代價較高

適用:需要大量隨機訪問,不需要經常插入刪除的情況

#include "stdafx.h"

#include #include using namespace std;

int _tmain(int argc, _tchar* argv)

//用cout<

//遍歷元素並列印到螢幕

傳回最後乙個資料,不檢查這個資料是否存在。

begin()

傳回迭代器

中的第乙個資料位址。

capacity()

返回容器當前已分配的容量。

clear()

移除容器中所有資料。

empty()

判斷容器是否為空。

erase(pos)

刪除pos位置的資料,傳回下乙個資料的位置。

erase(beg,end)

刪除[beg,end)區間的資料,傳回下乙個資料的位置。

front()

傳回第乙個資料。

get_allocator

使用建構函式

返回乙個拷貝。

insert(pos,elem)

//在pos位置插入乙個elem拷貝,傳回新資料位置

insert(pos,n,elem)

//在pos位置插入n個elem資料,無返回值

insert(pos,beg,end)/

/在pos位置插入在[beg,end)區間的資料。無返回值

max_size()

//返回容器中最大資料的數量。

pop_back()

刪除最後乙個資料。

push_back

(elem)

在尾部加入乙個資料。

rbegin()

反向迭代器的初始位置。

rend()

反向迭代器的最後乙個資料的下乙個位置。

resize(num)

重新指定佇列的長度。

reserve()

設定vector的容量。

size()

返回容器中實際資料的個數。

c1.swap(c2)

//將c1和c2元素互換

swap(c1,c2)

//同上操作。

vectorc

//建立乙個空的vector

vectorc1(c2)

//複製乙個vector

vector c(n)

//建立乙個vector,含有n個資料,資料均已預設構造產生

vector c(n,elem)

//建立乙個含有n個elem拷貝的vector

vector c(beg,end)

//建立乙個以(beg;end)為區間的vector

c.~ vector ()

//銷毀所有資料,釋放記憶體

vector::at()

//訪問vector的元素

vector::operator

//訪問vector的元素

C STL vector容器 簡單實用整理

1.1 介紹 vector 是c 中stl庫里的乙個容器,實質就是乙個長度未定的陣列,而且他還有一些常用操作 封裝 在了vector型別內部。1.2 舉例說明 vector是乙個模板類,所以需要用vector int a或者vector double b來宣告乙個vector,並且要引用 inclu...

C STL vector用法總結

向量 vector 是乙個封裝了動態大小陣列的順序容器 sequence container 跟任意其它型別容器一樣,它能夠存放各種型別的物件。可以簡單的認為,向量是乙個能夠存放任意型別的動態陣列。順序序列 順序容器中的元素按照嚴格的線性順序排序。可以通過元素在序列中的位置訪問對應的元素。動態陣列 ...

C STL vector用法總結

vector,是同一型別的物件的集合,這一集合可看作可變大小的陣列,是容器的一種。對於容器來說,其重要特性之一便是於可以在執行時高效地新增元素。類似於陣列,vector採用連續記憶體位址來儲存元素,因此vector屬於順序容器。也就意味著可以採用下標對vector的元素進行訪問,和陣列一樣高效 同時...