C++迭代器:const_iterator和const形式的iterator有什么区别?
来源:互联网 发布:php.ini file uploads 编辑:程序博客网 时间:2024/04/30 07:28
从C语言走过来的猿们, 对指针已经很熟悉了, 也很清楚指向常量的指针和常指针的区别。 在本文中, 我们来学习一下C++中的迭代器, 顺便类比指针来学习一下指向常量的迭代器和常迭代器的区别。
其实, 迭代器很简单, 你就把它理解为一种类似指针的东西就行了, 毕竟指针的概率是广义的, 你的手指, 大拇指, 小拇指, 那就是个指针。 比如, 完全可以把vector<int>::iterator理解为一个类型, 这个类型是迭代器类型, 就类似于char *这样的东东。
好吧, 直接看程序:
#include <iostream>#include <vector>using namespace std;int main(){vector<int> v(10);vector<int>::iterator it;for(it = v.begin(); it != v.end(); it++){*it = it - v.begin(); // 迭代器的解引用就像指针的解引用一样}vector<int>::const_iterator cit; // 指向常量的迭代器, cit本身可变, 但*cit不能变for(cit = v.begin(); cit != v.end(); cit++){cout << *cit << endl;}for(cit = v.begin(); cit != v.end(); cit++){//*cit = 0; // error, const_iterator这种类型的迭代器指向的值是不可以更改的}vector<int>::iterator const xit; // error, const iterator自身不能改变, 所以必须对xit进行初始化const vector<int>::iterator yit; // error, 同上return 0;}
0 0
- C++迭代器:const_iterator和const形式的iterator有什么区别?
- const iterator ,iterator 和const_iterator的区别
- iterator、const_iterator和const iterator的区别
- const_iterator, iterator和const iterator的区别
- const_iterator和const iterator的区别
- const iterator 和 const_iterator 的区别
- const iterator和const_iterator的区别
- const iterator 和const_iterator区别
- iterator和const iterator 和 const_iterator的区别
- c++ 中 const_iterator 和 const vector<>::iterator的区别
- c++ 中 const_iterator 和 const vector<>::iterator的区别
- const vector<int>::iterator和vector<int>::const_iterator的区别
- iterator,const_iterator,const iterator区别
- const_iterator与const的iterator的区别
- const_iterator 和 const..iterator
- const iterator和const_iterator
- const iterator 与const_iterator的区别
- const vector <int> ::iterator和vector <int>::const_iterator有什么不同
- CentOS普通用户添加sudo权限
- Maven使用Cargo实现自动化部署
- Unique Binary Search Trees
- 获取网络时间
- Java properties | FileNotFoundException: properties (系统找不到指定的文件。)
- C++迭代器:const_iterator和const形式的iterator有什么区别?
- 最长递增子序列O(N^2),O(N log(N))
- lca相关
- 代码示例函数隐藏、覆盖、重载
- 杭电 HDU 1039 Easier Done Than Said?
- MapReduce编程教训
- android ListView 学习(1)
- 溢出导致Sigabrt
- Android数据库升级