请问const vector ::iterator和vector ::const_iterator有什么不同

来源:学生作业帮助网 编辑:作业帮 时间:2024/08/17 02:11:59
请问const vector ::iterator和vector ::const_iterator有什么不同
xRN@56NX^J/H\EZ,ĄVN-/NgQc|ergΝs=3R/񩳽_TW J&W-XB|;KZ6lP_Am3UNU~hł#9HKLIvЉǏ1gԿT<0yB>`De0p.L~S[ݽx-`XԠ.ɟBqgu-%V;p3n .Y#b!wHJg9T&+0l*R-z=A`s(K ` !g"S ƺ%jeC2*r=>}%֝~zQ`kAxZ>*@eFAs/m<߿*zU*:hW}*Ŝl

请问const vector ::iterator和vector ::const_iterator有什么不同
请问const vector ::iterator和vector ::const_iterator有什么不同

请问const vector ::iterator和vector ::const_iterator有什么不同
类似于指针
const vector::iterator中,const是修饰的迭代器,也就是是个常迭代器,一旦初始化比如=a.begin(),再不能更改它的值,比如赋值=a.end()是不行的,递增递减操作等都不允许.
虽然类似指针,但指针是内置类型,所以编译器可以通过const的位置来判断是常指针还是指向常量的指针,而迭代器只是一个对象,所以编译器不能分辨,所以用const_iterator来取代指向常量的指针,使用它,你通过这个迭代器对迭代器所指向的内容进行改写是非法的.
ps:以后分区分准确一点,去C++区问吧.