您好,登錄后才能下訂單哦!
這篇文章主要介紹c++ vector怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
c++ vector用法是:1、創建vector對象;2、尾部插入數字;3、使用下標訪問元素;4、使用迭代器訪問元素;5、插入元素;6、)刪除元素等等。
在c++中,vector是一個十分有用的容器,c++ vector用法是:
1、基本操作
(1)頭文件#include<vector>.
(2)創建vector對象,vector<int> vec;
(3)尾部插入數字:vec.push_back(a);
(4)使用下標訪問元素,cout<<vec[0]<<endl;記住下標是從0開始的。
(5)使用迭代器訪問元素.
vector<int>::iterator it; for(it=vec.begin();it!=vec.end();it++) cout<<*it<<endl;
(6)插入元素:
vec.insert(vec.begin()+i,a);
在第i+1個元素前面插入a;
(7)刪除元素:
vec.erase(vec.begin()+2);
刪除第3個元素
vec.erase(vec.begin()+i,vec.end()+j);
刪除區間[i,j-1];區間從0開始
(8)向量大小: vec.size();
(9)清空: vec.clear();
2、vector的元素不僅僅可以使int,double,string,還可以是結構體,但是要注意:結構體要定義為全局的,否則會出錯。下面是一段簡短的程序代碼:
#include<stdio.h> #include<algorithm> #include<vector> #include<iostream> using namespace std; typedef struct rect { int id; int length; int width; //對于向量元素是結構體的,可在結構體內部定義比較函數,下面按照id,length,width升序排序。 bool operator< (const rect &a) const { if(id!=a.id) return id<a.id; else { if(length!=a.length) return length<a.length; else return width<a.width; } } }Rect; int main() { vector<Rect> vec; Rect rect; rect.id=1; rect.length=2; rect.width=3; vec.push_back(rect); vector<Rect>::iterator it=vec.begin(); cout<<(*it).id<<' '<<(*it).length<<' '<<(*it).width<<endl; return 0; }
3、算法
(1)、使用reverse將元素翻轉:需要頭文件#include<algorithm>
reverse(vec.begin(),vec.end());
將元素翻轉(在vector中,如果一個函數中需要兩個迭代器,一般后一個都不包含.)
(2)、使用sort排序:需要頭文件#include<algorithm>,
sort(vec.begin(),vec.end());
(默認是按升序排列,即從小到大).
可以通過重寫排序比較函數按照降序比較,如下:
定義排序比較函數:
bool Comp(const int &a,const int &b) { return a>b; }
調用時:sort(vec.begin(),vec.end(),Comp),這樣就降序排序。
以上是c++ vector怎么用的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。