原
2023年02月09日 12:24:18
bbbbbinary
閱讀數 162
更多分類專欄:
stl
筆記總結
vector可以看作陣列的增強版,可以用類似陣列的直接取得方式訪問,也可以使用函式操作,好處是可以不用提前規定長度,可以實現不定長度的儲存。
需要的標頭檔案:#include < vector >
宣告:vector 《儲存內容的型別 > 向量名稱
除了常見的宣告之外還有其餘幾種宣告方式
vector a ; //宣告乙個int型向量a
vector a(10) ; //宣告乙個初始大小為10的向量
vector a(10, 1) ; //宣告乙個初始大小為10且初始值都為1的向量
vector b(a) ; //宣告並用向量a初始化向量b
vector b(a.begin(), a.begin()+3) ; //將a向量中從第0個到第2個(共3個)作為向量b的初始值
也可以用陣列直接初始化
int n = ;
vector a(n, n+5) ; //將陣列n的前5個元素作為向量a的初值
vector a(&n[1], &n[4]) ; //將n[1] - n[4]範圍內的元素作為向量a的初值
除了可以作為單個向量使用,向量也可以建成陣列的形式,成為向量陣列。在與圖有關的題目中有時候也可以用這種結構儲存鄰接點,從而避免使用鄰接矩陣。在stl中向量有乙個很人性化的操作就是可以按照陣列的訪問方式訪問,比如說要取向量中的第三個元素,可以直接用q[2]來取,並不一定需要遍歷整個向量才可以,這一點在實際操作的時候會很方便。
vector可以看作陣列的增強版,可以用類似陣列的直接取得方式訪問,也可以使用函式操作,好處是可以不用提前規定長度,可以實現不定長度的儲存。
需要的標頭檔案:#include < vector >
宣告:vector 《儲存內容的型別 > 向量名稱
除了常見的宣告之外還有其餘幾種宣告方式
vector a ; //宣告乙個int型向量a
vector a(10) ; //宣告乙個初始大小為10的向量
vector a(10, 1) ; //宣告乙個初始大小為10且初始值都為1的向量
vector b(a) ; //宣告並用向量a初始化向量b
vector b(a.begin(), a.begin()+3) ; //將a向量中從第0個到第2個(共3個)作為向量b的初始值
也可以用陣列直接初始化
int n = ;
vector a(n, n+5) ; //將陣列n的前5個元素作為向量a的初值
vector a(&n[1], &n[4]) ; //將n[1] - n[4]範圍內的元素作為向量a的初值
除了可以作為單個向量使用,向量也可以建成陣列的形式,成為向量陣列。在與圖有關的題目中有時候也可以用這種結構儲存鄰接點,從而避免使用鄰接矩陣。在stl中向量有乙個很人性化的操作就是可以按照陣列的訪問方式訪問,比如說要取向量中的第三個元素,可以直接用q[2]來取,並不一定需要遍歷整個向量才可以,這一點在實際操作的時候會很方便。
STL標準模板庫 vector
原 2019年02月09日 12 24 18 bbbbbinary 閱讀數 162 更多分類專欄 stl 筆記總結 vector可以看作陣列的增強版,可以用類似陣列的直接取得方式訪問,也可以使用函式操作,好處是可以不用提前規定長度,可以實現不定長度的儲存。需要的標頭檔案 include vector...
標準模板庫(STL)使用 vector
或許你已經把 c 作為主要的程式語言用來解決 topcoder 上的問題。這意味著你已經簡單使用過了 stl,因為陣列和字串都是作為 stl 物件傳遞給函式。也許你已經注意到了,很多程式設計師寫 比你快得多,也更簡潔。或許你還不是但想成為一名 c 程式猿,因為這種程式語言功能很強大還有豐富的庫 也許...
標準模板庫STL之vector
stl vector 用於實現陣列的功能,相當於在陣列的基礎上封裝了一些常用的功能 push back在尾部新增乙個元素 pop back在尾部刪除乙個元素 clear清空所有的元素 at按索引訪問某個位置的元素 front返回頭元素 back返回尾元素 size返回元素的個數 capacity返回...