vector是乙個封裝了動態大小陣列的順序容器。可以理解為動態陣列。
方法一:
vector < int> a;
//建立乙個空陣列
方法二:
vector< int> a(10);
//建立10個元素的陣列,對於int,10個元素的值均為0。類似陣列定義int a[10]=;
方法三:
vector< int>a(10,1);
//建立10個元素的陣列,且每個元素初值為1
方法四:
vector< int> b(5);
//不能是int b[5],要是vector才行
vector< int> a(b);
//用向量b給向量a賦值,a的值完全等價於b的值
錯誤的賦值:
vector<
int> a;
//定義乙個空陣列a[0
]=1024
;//error
這樣寫是錯誤的,因為a裡還沒有第乙個元素,我們只能索引 vector 中已經存在的元素.
正確的賦值
應該是:a.push_back(2); a.push_back(5);
訪問:直接利用陣列,中括號。a[0],a[1]
size(): 返回 vector 包含的元素的個數。
push_back():插入操作,在vector的末尾新增乙個資料,而不是覆蓋現有的元素。
pop_back(): 刪除向量中最後乙個元素
clear():清除容器中所以資料
int
main()
std::cout << endl << obj.
size()
<< endl;
//10. size()獲取陣列長度
for(
int i =
0; i <
5; i++
)for
(int i =
0; i < obj.
size()
; i++
) obj.
clear()
;//清除容器中所以資料
std::cout << endl <<
"obj.size() = "
<< obj.
size()
<< endl;
= 0
return0;
}
vector< double> a(2); // 類似陣列定義int a[2];如果使用push_back()新增元素,則陣列大小會增加。
vector< double> a[2]; //說明有兩行陣列都是double型別的,而且裡面沒有元素。a [0]是第一行陣列,a[1]是第二行陣列。
int
main()
}// v[0] = 5 6 7 //第一行
// v[1] = 6 7 8 //第二行
cout << v[0]
[0]<< endl;
//5 cout << v[1]
[0]<< endl;
//6 cout << v[0]
[1]<< endl;
//6 cout << v[1]
[1]<< endl;
//7 cout << v[0]
[2]<< endl;
//7 cout << v[1]
[2]<< endl;
//8return0;
}
全部的**:
// eigen_test.cpp : 此檔案包含 "main" 函式。程式執行將在此處開始並結束。
//#include
#include
#include
#include
//using namespace eigen; //命名空間
using
namespace std;
intmain()
std::cout << endl << obj.
size()
<< endl;
//10. size()獲取陣列長度
for(
int i =
0; i <
5; i++
)for
(int i =
0; i < obj.
size()
; i++
) obj.
clear()
;//清除容器中所以資料
for(
int i =
0; i < obj.
size()
; i++
)#endif
/* 2.v[2]的用法,兩行陣列 */
#if 0
vector<
double
> obj[2]
;//說明有兩行,而且裡面沒有元素.target_positions[0]是第一行,target_positions[1]是第二行,
int d1 = obj[0]
.size()
;//第一行的元素個數為0
int d2 = obj[1]
.size()
;//第二行的元素個數為0
//cout << d1 << endl; //0
//cout << d2 << endl; //0
for(
int j =
0; j <
3; j++)}
// obj[0] = 5 6 7 //第一行
// obj[1] = 6 7 8 //第二行
cout << obj[0]
[0]<< endl;
//5 cout << obj[1]
[0]<< endl;
//6 cout << obj[0]
[1]<< endl;
//6 cout << obj[1]
[1]<< endl;
//7 cout << obj[0]
[2]<< endl;
//7 cout << obj[1]
[2]<< endl;
//8#endif
return0;
}
c vector容器的用法
vector 是向量型別,它可以容納許多態別的資料,如若干個整數,所以稱其為容器。vector 是c stl的乙個重要成員,使用它時需要包含標頭檔案 include using namespace std 一 vector 的初始化 可以有五種方式,舉例說明如下 1 vectora 10 定義了10...
vector容器用法
1 標頭檔案 include.2 建立vector物件,vector vec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout vector iterator it for it vec.begin it vec.end it cout it 6 插入元素 vec.i...
STL Vector容器用法
以類模板形式封裝的資料結構,用於儲存資料。標頭檔案 include vector是c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。vector之所以被認為是乙個容器,是因為它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動...