use*_*403 12 c++ stl
因此,当我们需要从头到尾遍历容器时,我们会写出类似的内容
for (i = v->begin(); i != v->end(); i++)
假设i是容器的迭代器v.
i
v
我的问题是"什么保证结束总是指向容器中最后一个元素的一个?" STL如何确保这种行为,这种情况是否有可能不正确?
Dav*_*nco 22
STL通过始终存储这样的东西来确保这种行为:
到底(双关语),也无所谓什么end() 是的,只要它总是end()(显然,不能与任何其他节点混淆).
end()
Jos*_*shD 3
stl 规范保证 end 将超过 end请参见此处。情况永远如此。具体如何执行此操作取决于实现(例如,有时这些值只是设置为 null),但请放心,只要 v 是有效的指针,您的循环就可以正常进行。
归档时间:
15 年,4 月 前
查看次数:
8483 次
最近记录:
12 年,9 月 前