读书人

vectorlt;const intgt;iterator it 语义是

发布时间: 2012-04-22 18:34:46 作者: rapoo

vector<const int>::iterator it 语义是什么?
我知道 const_iterator 是常迭代器, 那么如题声明是什么用处呢?
我尝试了

C/C++ code
    vector<const int>::iterator it;    it = it;    *it = *it;    *it = 1;    int i;    *it = i;    it++;

是可以编译通过的, 那么其中的 const 到底 '常' 在了哪里?

[解决办法]
是指容器内元素不能被修改,但是可以添加元素。
其中"*it = 1;"是编译不过的,我在gcc上测试过。


[解决办法]
我的意思是容器本身的初始化,而不是说迭代器
[解决办法]
vector<const int>::iterator it;

vector<const int>表面有一个vector,它的元素类型为const int(这种vector如何初始化?是个问题),而这个it就是用来迭代这跟vector元素用的。

[解决办法]
没法编译通过啊

读书人网 >C++

热点推荐