在c++中,vector是乙個十分有用的容器,下面對這個容器做一下總結。
1 基本操作
(1)標頭檔案#include
.
(2)建立vector物件,vectorvec;
(3)尾部插入數字:vec.push_back(a);
(4)刪除尾部數字:vec.pop_back();
(5)使用下標訪問元素,cout<(6)使用迭代器訪問元素:
vector3 演算法::iterator it;
for(it=vec.begin();it!=vec.end();it++)
cout
<<*it<(7)插入元素:vec.insert(vec.begin()+i,a);在第i+1個元素前面插入a;
(8)刪除元素:
vec.erase(vec.begin()+2);
刪除第3個元素
vec.erase(vec.begin()+i,vec.end()+j);
刪除區間[i,j-1];區間從0開始(9)向量大小:
vec.size();
(10)判空:
vec.empty()
(11)清空:
vec.clear();
vector的元素不僅僅可以使int,double,string,還可以是結構體,但是要注意:結構體要定義為全域性的,否則會出錯。下面是一段簡短的程式**:
#include
#include
#include
#include
using
namespace
std;
typedef
struct rect
(1) 使用reverse將元素翻**需要標頭檔案#include
reverse(vec.begin(),vec.end());將元素翻轉(在vector中,如果乙個函式中需要兩個迭代器,
一般後乙個都不包含.)
(2)使用sort排序:需要標頭檔案#include
,
sort(vec.begin(),vec.end());(預設是按公升序排列,即從小到大).
可以通過重寫排序比較函式按照降序比較,如下:
定義排序比較函式:
bool comp(const int &a,const int &b)
呼叫時:sort(vec.begin(),vec.end(),comp),這樣就降序排序.
lookupedit一般用法
繫結資料來源 lookupedit.properties.valuemember 實際要用的字段 相當於editvalue lookupedit.properties.displaymember 要顯示的字段 相當於text lookupedit.properties.datasource 資料來源...
FFMpeg 一般用法
ffmpeg 一般用法 ffmpeg i e gfxm.mkv vcodec libx264 vpre fast acodec copy f mpegts vbsf h264 mp4toannexb e out.ts 其中如果為copy 那麼表示不進行轉碼 acodec f 表示轉換格式 可以通過 ...
HeapAnalyzer一般用法
官方指導文件 heapanalyzer information 用heapanalyzer工具開啟dump檔案後,會有很多資訊,但對大部分人來說不用研究的那麼透徹,也沒必要搞清每項資訊都是什麼意思,只要達到我們的目的就可以了。我們用heapanalyzer分析dump,一般是想搞清是伺服器否存在記憶...