這個網上隨便都有啦,google一下,應有盡有。 說明
vector
是一種動態陣列
,是基本
陣列的類模板。其內部定義了很多基本操作。 #
include
注意:標頭檔案沒有
「.h」
構造:這個建構函式還有乙個可選的引數,這是乙個型別為
t的例項,描述了各個向量種各成員的初始值; 如:
vectorv2(init_size,0);
如果預先定義了:
intinit_size;
他的成員值都被初始化為0;
· 複製建構函式
,構造乙個新的向量,作為已存在的向量的完全複製;
如:vectorv3(v2); ·
帶兩個常量引數的建構函式,產生初始值為乙個區間的向量。區間由乙個半開區間
[first,last](msword
的顯示可能會有問題,
first
前是乙個左方括號,
last
後面是乙個右圓括號
)來指定。 如:
vectorv4
(first,last
)vectorv1;
vectorv2(init_size,0);
vectorv3(v2);
方法:c.assign(beg,end)c.assign(n,elem)
將(beg; end)
區間中的資料賦值給c。將
n個elem
的拷貝賦值給c。
c. at(idx)
傳回索引
idx所指的資料,如果
idx越界,丟擲
out_of_range。
c.back()
傳回最後乙個資料,不檢查這個資料是否存在。
c.begin()
傳回迭代器中的第乙個資料位址。
c.capacity()
返回容器中資料個數。
c.clear()
移除容器中所有資料。
c.empty()
判斷容器是否為空。
c.end() //
指向迭代器中末端元素的下乙個,指向乙個不存在元素。
c.erase(pos)//
刪除pos
位置的資料,傳回下乙個資料的位置。
c.erase(beg,end)
刪除[beg,end)
區間的資料,傳回下乙個資料的位置。
c.front()
傳回第乙個資料。
get_allocator
使用建構函式返回乙個拷貝。
c.insert(pos,elem)//
在pos
位置插入乙個
elem
拷貝,傳回新資料位置
c.insert(pos,n,elem)//
在pos
位置插入n個
elem資料,
無返回值
c.insert(pos,beg,end)//
在pos
位置插入在
[beg,end)
區間的資料。無返回值
c.max_size()
返回容器中最大資料的數量。
c.pop_back()
刪除最後乙個資料。
c.push_back(elem)
在尾部加入乙個資料。
c.rbegin()
傳回乙個逆向佇列的第乙個資料。
c.rend()
傳回乙個逆向佇列的最後乙個資料的下乙個位置。
c.resize(num)
重新指定佇列的長度。
c.reserve()
保留適當的容量。
c.size()
返回容器中實際資料的個數。
c1.swap(c2)// 將c1
和c2元素互換
例子:為了幫助理解向量的概念,這裡寫了乙個小例子,其中用到了
vector
的成員函式:
begin()
,end()
,push_back()
,assign()
,front()
,back()
,erase()
,empty()
,at()
,size()。
//stl_cpp_8.cpp
#include#includeusingnamespace std;
typedefvectorintvector;//自定義型別intvector
//測試vector容器的功能
voidmain(void)
{ //vec1物件初始為空
intvectorvec1;
//vec2物件最初有10個值為6的元素
intvectorvec2(10,6);
//vec3物件最初有3個值為6的元素,拷貝構造
intvectorvec3(vec2.begin(),vec2.begin()+3);
//宣告乙個名為i的雙向迭代器
intvector::iteratori;
//從前向後顯示vec1中的資料
cout<<"vec1.begin()--vec1.end():"<
push_back()
是將資料放入
vector
(向量)或
deque
(雙端佇列)的標準函
數。insert()
是乙個與之類似的函式,然而它在所有容器中都可以使用,但是用法更加複雜。
end()
實際上是取末尾加一,以便讓迴圈正確執行--它
返回的指標指向最靠近陣列界限的資料。
c 容器vector使用方法總結
for vector iterator i a.begin i a.end i 要使用迭代器 iterator 使用vexctor容器必須包含 vector 標頭檔案,然後建立乙個vector容器物件 方式很多種,這裡就不一一介紹了,具體看例項 d 然後我們對vector容器初始化賦值 可以使用pu...
C 中vector容器型別的使用方法
vector類為內建陣列提供了一種替代表示,與string類一樣 vector 類是隨標準 c 引入的標準庫的一部分 為了使用vector 我們必須包含相關的標頭檔案 include 使用vector有兩種不同的形式,即所謂的陣列習慣和 stl習慣。1.定義乙個已知長度的 vector vector...
vector使用方法
在c 中,vector是乙個十分有用的容器,下面對這個容器做一下總結。1 基本操作 1 標頭檔案 include.2 建立vector物件,vectorvec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout vector iterator it for it vec...