C++中的vector簡單使用實例_第1頁
C++中的vector簡單使用實例_第2頁
C++中的vector簡單使用實例_第3頁
C++中的vector簡單使用實例_第4頁
C++中的vector簡單使用實例_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

C++中的vector簡單使用實例

作者:天涯來源:中國自學編程網(wǎng)發(fā)布日期:1236667017

前幾天網(wǎng)友問我C++里面的%ctor的使用,現(xiàn)在對vector進行簡單總結,共享CSDN網(wǎng)友。

說明:東西比較簡單,如果你很牛,請直接關閉本頁.

首先是vector的聲明.

#includ.<vector.

spac.std./.在這里聲.

vector<int.i.

或.

#includ.<vector.

std::vector<int.i./.在這里顯式聲.

看具體使用.

l.vecto.的數(shù)據(jù)的存入和輸出.

vie.plaincop.t.clipboardprint.

vector<CString.v.

for(in..=0;i<40;i++.

CStrin.s.

s.Format("%d",i).

v.push_back(s).

CStrin.s..

for(in..=0;j<v,size();j++.

,,

ss+=v[j]+z".

MessageBox(ss).

注:你也可以用v.begin。和v.end(.來得到vector開始的和結束的元素地址的指針位置。你

也可以這樣做.

vie.plaincop.t.clipboardprint.

vector<CString.v.

for(in..=0;i<40;i++.

CStrin.s.

s.Format("%d"zi).

v.push_back(s).

CStrin.s..

vector<CString>::iterato.iter.

for.ite..v.begin().ite.!.v.end(),iter+..

ss+.*iter+"/'.

MessageBox(ss).

vector<CString.v.

for(in..=0;i<40;i++.

CStrin.s.

s.Format("%d",i).

v.push_back(s).

CStrin.s..

vector<CString>::iterato.iter〃枚舉器

for.ite..v.begin().ite.!.v.end(),iter+..

,

ss+.*iter+"/'.

MessageBox(ss).

2.對于二維vector的定義(開始就固定長度.

vie.plaincop.t.clipboardprint.

vector.vector<CString...Array.10.vector<CString>(0.).

for.in...0...10.j+..

fo.(in...0...9.i+..

CStrin.s.

s.Format(,,%d",i).

Array..].push_back(s).

CStrin.ss.

for.in.j..0.j..l0.jj+..

for(in.i..0.i..Array.j.].size().ii+..

ss+=Array[jj][ii].

MessageBox(ss).

vector.vector<CString..Array.l0.vector<CString>(0.).

for.in...0...10.j+..

fo.(in...0...9.i+..

CStrin.s.

s.Format(,'%d",i).

Array..].push_back(s).

CStrin.ss.

for.in.j..O.j..lO.jj+..

for(in.i..0.i..Array.j.].size().ii+..

ss+=Array[jj][ii].

MessageBox(ss).

3.定義一個行列都是變化的數(shù).

vie.plaincop.t.clipboardprint.

in...O...O.

vector.vector<CString..Array.

vector.CStrin..line.

for...0...10.j+..

Array.push_back.lin.);〃要對每一個vector初始化,否則不能存入元素.

fo....0...9.i+..

CStrin.s.

s.Format("%d",i).

Array..].push_back..).

CStrin.ss.

for(in.j..O;jj<Array.size();jj++.

for(in.i.=O;ii<Array[jj].size();ii++.

ss+=Array[jj][ii].

MessageBox(ss).

前幾天網(wǎng)友問我C++里面的vector的使用,現(xiàn)在對vector進行簡單總結,共享CSDN網(wǎng)友。

說明:東西比較簡單,如果你很牛,請直接關閉本頁!

首先是vector的聲明:

#include<vector>

usingnamespacestd;//在這里聲明

vector<int>i;

e??

或者

#include<vector>

?■?

std::vector<int>i;//在這里顯式聲明

看具體使用:

1.vector的數(shù)據(jù)的存入和輸出:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

)

CStringss;

for(intj=0;j<v.size();j++)

{

ss+=v0]+"z";

}

MessaqeBox(ss);

注:你也可以用v.begin。和v.end()來得到vector開始的和結束的元素地址的指針位置.

你也可以這樣做:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

{

CStrings;

s.Format("%d",i);

v.push_back(s);

}

CStringss;

vector<CString>:iteratoriter;

for(iter=v.begin();iter!=v.end();iter++)

(

ss+=*iter+"/";

}

MessageBox(ss);

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

}

CStringss;

vector<CString>::iterato門ter;〃枚舉器

for(iter=v.begin();iter!=v.end();iter++)

{

ss+=*iter+"J;

)

MessageBox(ss);

2.對于二維vector的定義(開始就固定長度)

viewplaincopytoclipboardprint?

vector<vector<CString>>Array(10zvector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

{

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

}

)

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

)

}

MessageBox(ss);

vector<vector<CString>>Array(10,vector<CString>(0));

for(intj=0;j<10;j++)

(

for(inti=0;i<9;i++)

{

CStrings;

s.Format("%d"zi);

Array[i].push_back(s);

}

)

CStringss;

for(intjj=0;jj<10;jj++)

{

for(intii=0;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

}

)

MessageBox(ss);

3.定義一個行列都是變化的數(shù)組

viewplaincopytoclipboardprint?

inti=0,j=0;

vector<vector<CString>>Array;

vector<CString>line;

for(j=0;j<10;j++)

{

Array.push_back(line);〃要對每一個vector初始化,否則不能存入元素。

for(i=0;i<9;i++)

{

CStrings;

s.Format("%d"zi);

Array[j].push_back(s);

}

}

CStringss;

for(intjj=O;jj<Array.size();jj++)

{

for(intii=O;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

}

}

MessageBox(ss);

前幾天網(wǎng)友問我C++里面的vector的使用,現(xiàn)在對vector進行簡單總結,共享CSDN網(wǎng)友。

說明:東西比較簡單,如果你很牛,請直接關閉本頁!

首先是vector的聲明:

#include<vector>

usingnamespacestd;//在這里聲明

?■?

vector<int>i;

或者

#include<vector>

std::vector<int>i;//在這里顯式聲明

看具體使用:

l.vector的數(shù)據(jù)的存入和輸出:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

}

CStringss;

for(intj=0;j<v.size();j++)

{

ss+=vO]+"z";

)

MessageBox(ss);

注:你也可以用v.begin。和v.end。來得到vector開始的和結束的元素地址的指針位置。

你也可以這樣做:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format(,,%d",i);

v.push_back(s);

}

CStringss;

vector<CString>::iteratoriter;

for(iter=v.begin();iter!=v.end();iter++)

{

ss+=*iter+"J;

)

MessageDox(ss);

vector<CString>v;

for(inti=0;i<40;i++)

{

CStrings;

s.Format("%d"zi);

v.push_back(s);

)

CStringss;

vectorvCString〉::iteratoriter;〃枚舉器

for(iter=v.begin();iter!=v.end();iter++)

{

ss+=*iter+"z";

}

MessageBox(ss);

2,對于二維vector的定義(開始就固定長度)

viewplaincopytoclipboardprint?

vector<vector<CString>>Array(10,vector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

)

}

CStringss;

for(intjj=0;jj<10;jj++)

{

for(intii=0;ii<Array[jj].size();ii++)

(

ss+=Array[jj][ii];

}

)

MessageBox(ss);

vector<vector<CString>>Array(10,vector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

(

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

}

}

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

)

}

MessageBox(ss);

3,定義一個行列都是變化的數(shù)組

viewplaincopytoclipboardprint?

inti=0zj=0;

vector<vector<CString>>Array;

vector<CString>line;

for(j=0;j<10;j++)

Array.push_back(line);〃要對每一個vector初始化,否則不能存入元素。

for(i=0;i<9;i++)

{

CStrings;

s.Format("%d",i);

Array[j].push_back(s);

}

)

CStringss;

for(intjj=O;jj<Array.size();jj++)

{

for(intii=O;ii<Array[jj].size();ii++)

(

ss+=Array[jj][ii];

)

}

MessageBox(ss);

前幾天網(wǎng)友問我C++里面的vector的使用,現(xiàn)在對vector進行簡單總結,共享CSDN網(wǎng)友。

說明:東西比較簡單,如果你很牛,請直接關閉本頁!

首先是vector的聲明:

#include<vector>

usingnamespacestd;//在這里聲明

vector<int>i;

或者

#include<vector>

std::vector<int>i;//在這里顯式聲明

看具體使用:

1.vector的數(shù)據(jù)的存入和輸出:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

)

CStringss;

for(intj=O;j<v.size();j++)

{

ss+=v[j]+"/";

}

MessageBox(ss);

注:你也可以用v.begin。和v.end()來得到vector開始的和結束的元素地址的指針位置。

你也可以這樣做:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

{

CStrings;

s.Format("%d"zi);

v.push_back(s);

}

CStringss;

vector<CString>::iteratoriter;

for(iter=v.begin();iter!=v.end();iter++)

(

ss+=*iter+"z";

)

MessageBox(ss);

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

}

CStringss;

vector<CString>::iterat(xiter;//枚舉器

for(iter=v.begin();iter!=v.end();iter++)

{

ss+=*iter+"z";

}

MessageBox(ss);

2.對于二維vector的定義(開始就固定長度)

viewplaincopytoclipboardprint?

vector<vector<CString>>Array(10zvector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

(

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

}

)

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

)

}

MessageBox(ss);

vector<vector<CString>>Array(1OZvector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

(

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

)

)

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

)

)

MessageBox(ss);

3.定義一個行列都是變化的數(shù)組

viewplaincopytoclipboardprint?

inti=0zj=0;

vector<vector<CString>>Array;

vector<CString>line;

for(j=0;j<10;j++)

{

Array.push_back(line);〃要對每一個vector初始化,否則不能存入元素。

for(j=0;i<9;i++)

(

CStrings;

s.Format("%d",i);

Array[j].pushback(s);

}

}

CStringss;

for(intjj=0;jj<Array.size();jj++)

(

for(intii=O;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

}

}

MessageBox(ss);

前幾天網(wǎng)友問我C++里面的vector的使用,現(xiàn)在對vector進行簡單總結,共享CSDN網(wǎng)友。

說明:東西比較簡單,如果你很牛,請直接關閉本頁!

首先是vector的聲明:

#include<vector>

usingnamespacestd;//在這里聲明

vector<int>i;

?■?

或者

#indude<vector>

e■?

std::vector<int>i;//在這里顯式聲明

看具體使用:

1.vector的數(shù)據(jù)的存入和輸出:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

CStrings;

s.Format("%d",i);

v.push_back(s);

)

CStringss;

for(intj=O;j<v,size();j++)

(

ss+=v[j]+,7,;

}

MessageBox(ss);

注:你也可以用v.begin。和v.end()來得到vector開始的和結束的元素地址的指針位置。

你也可以這樣做:

viewplaincopytoclipboardprint?

vector<CString>v;

for(inti=0;i<40;i++)

(

CStrings;

s.Format("%d",i);

v.push_back(s);

)

CStringss;

vector<CString>:iteratoriter;

for(iter=v.begin();iter!=v.end();iter++)

{

ss+=*iter+",";

)

MessageBox(ss);

vector<CString>v;

for(inti=0;i<40;i++)

{

CStrings;

s.Format("%d"zi);

v.push_back(s);

)

CStringss;

vector<CString>:iteratoriter;〃枚舉器

for(iter=v.begin();iter!=v.end();iter++)

ss+=*iter+"/";

}

MessageBox(ss);

2.對于二維vector的定義(開始就固定長度)

viewplaincopytoclipboardprint?

vector<vector<CString>>Array(10,vector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

{

CStrings;

s.Format("%d",i);

Array[i].push_back(s);

}

}

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

(

ss+=Array[jj][ii];

}

)

MessageBox(ss);

vector<vector<CString>>Array(10,vector<CString>(0));

for(intj=0;j<10;j++)

{

for(inti=0;i<9;i++)

{

CStrings;

s.Format("%d",i);

Arrayfi].push_back(s);

}

)

CStringss;

for(intjj=0;jj<10;jj++)

(

for(intii=0;ii<Array[jj].size();ii++)

(

ss+=ArrayUj][ii];

)

)

MessageBox(ss);

3.定義一個行列都是變化的數(shù)組

viewplaincopytoclipboardprint?

inti=0,j=0;

vector<vector<CString>>Array;

vector<CString>line;

for(j=0;j<10;j++)

(

Array.push_back(line);〃要對每一個vector初始化,否則不能存入元素。

for(i=0;i<9;i++)

(

CStrings;

s.Format("%d",i);

Array[j].push_back(s);

)

)

CStringss;

for(intjj=O;jj<Array.size();jj++)

{

for(intii=O;ii<Array[jj].size();ii++)

{

ss+=Array[jj][ii];

)

}

MessageBox(ss);

問大家有關vector氏度和容量的問題

ttinclude<vector>

#include<iostream>

^include<string>

usingnamespacestd:

voidmain()

(

vector<string>svec;〃長度和容量都是0

svcc.reserve(64);//長度不變,容量被苴為64

stringtext_word:

while(cin>>textword)

svec.push_back(lext_word);//‘輸入192個單詞,長度變?yōu)?92

//容量為256

svcc.rcsizc(svec.sizc()+70);

cout<<"size:*<<svec.sizeO

<<*capacity:*<<svec.capacity()<<endl:

〃長度增長70,為262,容后為384

)

為什么容量是384,而不是512或326?

想在每個元素之前插入100。如100210031004……10021,但是下面的程序不能運行,哪里錯了應該怎

么改?

9include<iostream>

*include<vector>

usingnamespacestd;

intmainO

vector<int>a:

for(inti=l;i<21;i++)

a.push_back(i+l):

a.resize(40);

for(vector<int>::iteratoriter=a.begin():iter!=a.end():iter++)

(

a.inserl(iter,100);

)

for(vector<int>::iteratoriter=a.begin();iter!=a.end():iter++)

cout?*itcr;

system("pause");

return0;

對我有用[0]

丟個板磚[0]

引用

舉報

管理

TOP

回復次數(shù):5

回復次數(shù):5

#1嘍得分:10回復于:2008-05-2512:29:42

C/C++code

for(vector<int>::iteratoriter=a.begin();iter!=a.end

er)

(Poss)

等級:/

iter=a.insert(iter,100);

++iter;

我有

用roT

LJ

個roJ

L

T

OP

精華推薦:前天面深信服的一套比試題有點意思大家研究下好么?

精華推薦:前天面深信服的一套比試題有點意思55大家研究下好么?

精華推薦:前天面深信服的一套比試題有點意思Si大家研究下好么?

#2樓得分:10回復于:2008-05-2512:29:54

C/C-H-code

^include<iostrean>

#include<vector>

#include〈algorithm)

usingnamespacestd;

baihacker

(飛雪)

等級:/

intmain()

(

vector<int>a;

for(inti=l;i<21;i++)

a.push_back(i+l);

for(vector<int>::iteratoriter=a.bogin();iter!=

ter+=2)

iter=a.insert(iter,100);

copy(a.begin(),a.end(),ostream_iterator<int>(cout,

system(^pause^);

return0;

)

100210031004100

06

100710081009100

011

100121001310014100

016

100171001810019100

021

請按任意鍵繼續(xù)...

對我有用[0]

丟個板磚「01

引用

舉報

管理

TOP

精華推薦:進程的問題

精華推薦:進程的問題

#3樓得分:0回復于:2008-05-2512:34:47

C/C++code

#include<iostream〉

#include<vector>

usingnamespacestd;

effective_personintmainO

(曉風)

(

等級:/

vector<int>a;

for(inti=l;i<21;i++)

a.push_back(i+l);

//a.resize(40):這句可以去掉,因為vector可以自己增力

最好用list

for(vector<int>::iteratoriter=a.begin();iter!=

+iter,++iter)

(

iter=a.inser

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論