C++容器和迭代器问题
最近在学习<<The c++ Standard Library>> ; 关于"容器"和"迭代器",这个两词在很多高级语言中提到过(pytho,ruby,c++),现在就是对这两个名词有一种似懂非懂的感觉,敬请诸位能否通俗解释这两个名词的意思?非常感谢.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(10)
算法和数据结构的分离,总得给起个名字
容器:装东西的器具。这里你可以类比看成是装数据的容器。链表可以看成一个容器。每个节点都装有定义的数据。
迭代器:你可把他看成一个游标。他指向容器中的某个数据。你也可以理解迭代器是一个指针。
+1
int a[10], i = 0;
for (i = 0; i < 10; i++) {
//do something with a[i]
}
a就是容器,i就是迭代器
int a[10], i = 0;
for (i = 0; i < 10; i++) {
//do something with a[i]
}
a就是容器,i就是迭代器
容器:装东西的器具。这里你可以类比看成是装数据的容器。链表可以看成一个容器。每个节点都装有定义的数据。
迭代器:你可把他看成一个游标。他指向容器中的某个数据。你也可以理解迭代器是一个指针。
我的理解,容器就是数据类型,什么数组啊、栈啊、字典啊之类的。
迭代器,就是这个容器的专用工作指针,针对容器做了很多优化,比如下标越界检查什么的
我的理解,容器就是数据类型,什么数组啊、栈啊、字典啊之类的。
迭代器,就是这个容器的专用工作指针,针对容器做了很多优化,比如下标越界检查什么的
可以看下理解下代码
容器:装东西的器具。这里你可以类比看成是装数据的容器。链表可以看成一个容器。每个节点都装有定义的数据。
迭代器:你可把他看成一个游标。他指向容器中的某个数据。你也可以理解迭代器是一个指针。