const vector iterator
来源:互联网 发布:电脑软件开发制作 编辑:程序博客网 时间:2024/04/28 21:44
vector<int>::const_itertor; //容器是常量
const vector<int>::itertor; // 迭代器是常量
const_vector类型只能用于读取容器内元素,但不能改变其值。当我们对const_iterator类型解引用时,得到一个指向const对象的引用,该对象不能进行重写。使用const_iterator类型时可以得到一个迭代器,它自身的值可以改变,但不能用来改变其所指向的元素的值。可以对迭代器进行自增以及使用解引用操作符来读取值,但不能对该元素赋值:
const vector<int> nines(10,9);
// 不可改变nines中元素的值
const vector<int>::iterator cit2=nines.begin();
/* cit2自身是const型的,它指向nines后便不能再指向其它vector,但cit2可以改变其所指向元素的值,而nines为const型迭代器,其元素的值是不可改变的,所以该赋值错误。*/
vector<int>::const_iterator it=nines.begin();
// nines元素的值是不可改变的,因此用const_iterator类型的vector指向其元素是合适的。
*it=10;
// 错误。it自身的值是不可改变的,这样也就保证了nines元素中的值不会改变
++it;
//正确。it可以改变其指向,其最大优点就是该指针的只读性,它保证了其所指向元素的不可修改性。
声明一个const迭代器时必须对其初始化,初始化后再不允许改变它的值(不能再指向其它元素)。
http://zhanghu-hs.blog.sohu.com/129119232.html
- const vector iterator
- const vector<int>::iterator和vector<int>::const_iterator的区别
- c++ 中 const_iterator 和 const vector<>::iterator的区别
- c++ 中 const_iterator 和 const vector<>::iterator的区别
- Vector Iterator
- vector+iterator
- vector iterator
- const vector <int> ::iterator和vector <int>::const_iterator有什么不同
- iterator, const_iterator 与 const iterator
- iterator,const_iterator,const iterator区别
- string/vector/iterator
- vector和iterator
- vector iterator 的使用
- vector 与iterator
- C++ iterator vector
- C++ vector之iterator
- C++vector 迭代器iterator
- vector和iterator
- Codevs P1116 四色问题
- 【第4节】Java代码实现栈--小例子--分隔符匹配
- 前端面试记录 阿里云前端 2015-10-10
- hdu4414Finding crosses 水题
- java md5加密字符
- const vector iterator
- scrapy安装
- Mahout 对推荐数据的抽象表示(下部分)
- 例题9-27 方块消除 UVa10559
- Objective-C语法之NSArray和NSMutableArray
- hive1.2.1安装详解(亲测有效)
- 腐蚀与膨胀
- iOS基石(零) - 准备
- 【codevs2144】砝码称重2,哈希什么的都去死吧