vector 是stl中的容器類,包含多種通用演算法1:array 定義的時候必須定義陣列的元素個數;而vector 不需要;長度可變,使用靈活,但效率稍低
vector是使用 new 和 delete 來管理記憶體的
且只能包含整型字面值常量,列舉常量或者用常量表示式初始化的整型const物件,4. 陣列和vector不同,乙個陣列不能用另乙個陣列初始化,也不能將乙個陣列賦值給另乙個陣列; 5非const變數以及需要到執行階段才知道其值的const變數
都不能用來定義陣列的維度.
2:array 定義後的空間是固定的了,不能改變;而vector 要靈活得多,可再加或減.
3:vector有一系列的函式操作,非常方便使用.和vector不同,陣列不提供 push——back或者其他的操作在陣列中新增新元素,陣列一經定義就不允許新增新元素;
若需要則要充許分配新的記憶體空間,再將員陣列的元素賦值到新的記憶體空間。
、vector與陣列最大的區別就是可以實現動態儲存;
vectortext;//定義string的容器,這時候該容器是空的.。
//翻譯為容器非常形象吧,呵呵!
string word; //定義字串變數
while(cin>>word)
text.push_back(word)//每輸入一串字元,就將他裝入我們定義的容器
//為了驗證我們的結論,我們看看輸出結果,當然vector型別可以像數
//陣列一樣用下標輸出,不過這不是乙個好辦法
//輸出容器中的資料我們一般使用迭代器,**如下:
for( vector::iterator i=text.begin(); i!=text.end(); i++)
C 陣列array與vector的比較
1.陣列的為數必須用 值大於等於1的常量表示式定義,且只能包含整型字面值常量,列舉常量或者用常量表示式初始化的整型const物件,非const變數以及需要到執行階段才知道其值的const變數都不能用來定義陣列的維度 2.陣列的維度必須用 內指定 3.顯示初始化陣列元素的時候用 括起來,成為初始化列表...
c 中的array陣列和vector陣列
我覺得實驗一下會記得比較牢,話不多直接上 下面是array陣列,感覺用的不多。cpp 風格陣列 array include include include using namespace std intmain for int i 0 i myint.size i size 獲取長度,vector也...
比較陣列,模板array和模板vector
先上簡單的乙個例項 include include include int main c 98 stl vectora2 4 creat vector with 4 elements no way to initinaize in c98 a2 0 1.0 3.0 a2 1 1.0 5.0 a2 2...