社区
C++ 语言
帖子详情
迭代器失效
Microsoft777
2008-06-06 03:13:01
我们如何解决迭代器失效呢?
答:用另外一个迭代器拷贝。
但是这样很浪费空间,还有什么更好的办法吗?
对了,当初设计的时候为什么要让迭代器失效呢?
...全文
346
16
打赏
收藏
迭代器失效
我们如何解决迭代器失效呢? 答:用另外一个迭代器拷贝。 但是这样很浪费空间,还有什么更好的办法吗? 对了,当初设计的时候为什么要让迭代器失效呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
编程夜猫
2008-09-08
打赏
举报
回复
STL标准模板库(候捷版)里迭代器一切也讲过为什么要失效。楼主好好看看
fengyizi
2008-09-08
打赏
举报
回复
重新在对象上获得新的有效的迭代器啊。
保存什么啊,保存的也是错误的。失效的。
lsm164
2008-09-08
打赏
举报
回复
[Quote=引用 9 楼 matrixdwy 的回复:]
erase不是会返回一个iterator吗?就用这个返回值重新赋值不就得了
[/Quote]
pengzhixi
2008-09-08
打赏
举报
回复
[Quote=引用 7 楼 yshuise 的回复:]
迭代器失效的方法很简单,就是重新计算:
C/C++ codevector<int> r;
r.begin(); //用这个
r.end(); //用这个重新
[/Quote]
这个应该是比较好的方法
iambic
2008-09-07
打赏
举报
回复
楼上的是不是打错字了?
richbirdandy
2008-09-07
打赏
举报
回复
你的答就错了 看7楼和9楼
iambic
2008-09-07
打赏
举报
回复
要先明白为什么会失效。
matrixdwy
2008-09-07
打赏
举报
回复
erase不是会返回一个iterator吗?就用这个返回值重新赋值不就得了
xiaoyisos
2008-09-07
打赏
举报
回复
容器真是好东西啊 ~~
yshuise
2008-06-06
打赏
举报
回复
迭代器失效的方法很简单,就是重新计算:
vector<int> r;
r.begin(); //用这个
r.end(); //用这个重新
jieao111
2008-06-06
打赏
举报
回复
[Quote=引用 4 楼 Microsoft777 的回复:]
引用 2 楼 taodm 的回复:
去看《effective STL》
具体看哪里啊?
[/Quote]
名字好象是怎么删除有效一类,,,讲了失效的解决方法,,
对了,当初设计的时候为什么要让迭代器失效呢?
不能面面俱到,总会有不足,取舍之后就有失效了
herman~~
2008-06-06
打赏
举报
回复
我们如何解决迭代器失效呢?
答:用另外一个迭代器拷贝。
但是这样很浪费空间,还有什么更好的办法吗?
迭代器拷贝为了预防失效
Microsoft777
2008-06-06
打赏
举报
回复
[Quote=引用 2 楼 taodm 的回复:]
去看《effective STL》
[/Quote]
具体看哪里啊?
ysuliu
2008-06-06
打赏
举报
回复
只要erase中间的元素,基本都会发生失效,这个不是设计的问题,你只要用容器迭代器,只要存在删除,插入等操作,失效不可避免。重要的还是能随时发现失效的迭代器,作出正确的处理
taodm
2008-06-06
打赏
举报
回复
去看《effective STL》
qhfu
2008-06-06
打赏
举报
回复
一般迭代器失效 可能是节点被erase,所以需要一个copy.
关于
迭代器
失效
的一些认识
关于
迭代器
失效
的一些认识 关于
迭代器
失效
的一些认识 关于
迭代器
失效
的一些认识
c++
迭代器
失效
问题
c++
迭代器
失效
问题,描述c++中各种集合的
迭代器
使用
朱老师C++课程第3部分3.2.STL的容器类和
迭代器
《朱老师带你学C++》属于系列课程《朱有鹏老师热门编程语言全解》的第一部分,主要针对C++语言学习。本课程可以看做是嵌入式linux核心课程中《C语言专题》课程的延续,在学好了C语言前提下继续深度学习C++语言。...
迭代器
失效
小结
迭代器
失效
小结
vector的earse造成
迭代器
失效
的问题
vector的earse造成
迭代器
失效
的问题
C++ 语言
64,641
社区成员
250,579
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章