C++Primer学習7:const iteratorとconst_iteratorの違い
1060 ワード
const iteratorとは、iteratorがパラメータであり、変更不可であることを意味します.
const_iteratorはiteratorが指す要素で変更できません
const_iteratorはiteratorが指す要素で変更できません
#include
#include
using namespace std;
int main()
{
vector num(10,9);
// 2
const vector::iterator iter1 = num.begin(); // ,
// ++iter1; //error
vector::const_iterator iter2 = num.begin(); //
++iter2; //true
// *iter2 = 7; //error
int i;
vector::iterator iter;
for(i = 0,iter = num.begin(); iter != num.end(); ++iter,++i)
{
*iter = i;
}
//
//iter + n
vector::iterator iter3 = num.begin();
vector::iterator iter4 = num.end();
vector::iterator mid = num.begin() + num.size() / 2;
iter3 += 2;
cout << "*iter3 = " << *iter3 << endl;
cout << "iter4 iter3 :"<< iter4 - iter3 <