トップページに戻る
次のC++のサンプルへ
前のC++のサンプルへ
2-2 STLのVectorでRemoveAtもどき
C++のサンプル
eraseメソッドを使った、STLのVectorでRemoveAtもどきのサンプルです。
ソース
#include <stdio.h>
#include <vector>
void RemoveAt(std::vector<int>& pVec, int p)
{
std::vector<int>::iterator it = pVec.begin();
std::advance(it,p);
pVec.erase(it);
}
void main()
{
std::vector<int> wkVect;
for (int I=1;I<=10;I++){
wkVect.push_back(I);
}
for (int I=0;I<=(int)wkVect.size()-1;I++){
printf("wkVect.at(%d)=%d\n",I,wkVect.at(I));
}
RemoveAt(wkVect,0);
RemoveAt(wkVect,2);
RemoveAt(wkVect,4);
for (int I=0;I<=(int)wkVect.size()-1;I++){
printf("wkVect.at(%d)=%d\n",I,wkVect.at(I));
}
}
実行結果
wkVec[0]=1
wkVec[1]=2
wkVec[2]=3
wkVec[3]=4
wkVec[4]=5
wkVec[5]=6
wkVec[6]=7
wkVec[7]=8
wkVec[8]=9
wkVec[9]=10
wkVec[0]=2
wkVec[1]=3
wkVec[2]=5
wkVec[3]=6
wkVec[4]=8
wkVec[5]=9
wkVec[6]=10
解説