const_iterator 与const迭代器如果细究起来,差别还相当大,但要理解这两个东西的区别,还不太容易,下面谈谈对这两个东西的理解,有不对之处或说得不好的地方,希望大家踊跃提出,多给意见
vector<int>vec(5, 10);
const vector<int>::iterator iter = vec.begin();
如果出现下面的情况,则是不对的
++iter;
因为iter已经被定义为一个常量(用const修饰),意为不可改变的量,任何试图改变iter的行为都会报错,iter只能指向vec的一个对象,不能改变其他对象,就例如这个小黄车是小明家的,地址是定死在小明家,就不能把小黄车推到小红家
下面的语句则是正确的