社区
C++ 语言
帖子详情
请问那位知道那种容器在删除其中一个元素后不会影响剩余的元素位置,并且它的大小可以变化。
抬头看路
2004-01-25 04:58:41
请问那位知道那种容器在删除其中一个元素后不会影响剩余的元素位置,并且它的大小可以变化。
...全文
152
3
打赏
收藏
请问那位知道那种容器在删除其中一个元素后不会影响剩余的元素位置,并且它的大小可以变化。
请问那位知道那种容器在删除其中一个元素后不会影响剩余的元素位置,并且它的大小可以变化。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
抬头看路
2004-01-26
打赏
举报
回复
我现在用的是set,但是set需要比较两遍,而我的比较函数代价是比较高的。
抬头看路
2004-01-26
打赏
举报
回复
不好意思,少说了一个条件,还需要能够随机访问。并且我的意思就是希望iterator不失效。
mechgoukiteng
2004-01-25
打赏
举报
回复
除了list以外 map和set--包括不同的底层实现都可以
容器
删除
元素
后迭代器失效_
容器
大小
的改变以及
容器
操作可能使迭代器失效、vector对象的容量
变化
...
1 改变
容器
的
大小
我们可以使用resize来增加或缩小
容器
,与往常一样,array不支持resize。如果当前
大小
大于所要求的
大小
,
容器
后面的
元素
会被
删除
;如果当前
大小
小于新
大小
,会将新
元素
添加到
容器
后部:list ilist(10,42); //10个int:每个的值都是42ilist.resize(15); //将5个值为0的
元素
添加到ilist的末尾ilist.resize(25,-...
C++
容器
详解
顺序
容器
:此处的顺序不是体现在
元素
的值的顺序,而是指的是
元素
加入
容器
时的
位置
相对应的。 关联
容器
:顺序
容器
分类: 类型 特点 vector 可变
大小
数组 支持快速随机访 在尾部之外的
位置
插入或
删除
元素
可能很慢。 deque 双端队列 支持快速随机访问 在头尾
位置
插入/
删除
速度很快 list 双向链表 只支持双向顺序访问 在list的
C++---迭代器
删除
元素
避免索引混乱
在C++中,使用索引直接
删除
容器
元素
可能导致"索引混乱",因为
删除
操作会改变后续
元素
的
位置
。相比之下,迭代器提供了更安全的
删除
方式:迭代器是
容器
元素
的"智能指针",能动态感知
容器
变化
,而erase()方法会返回新的有效迭代器。不同
容器
的迭代器失效规则不同,vector
删除
后所有后续迭代器失效,而链表
容器
仅失效被
删除
元素
的迭代器。正确做法是:用erase()返回值更新迭代器,循环中避免盲目递增;优先使用remove_if等标准算法;注意不同
容器
的特性差异。
C++
容器
:
容器
操作
1.
容器
位置
操作:c.begin() 返回一个迭代器,它指向
容器
c 的第一
个
元素
c.end() 返回一个迭代器,它指向
容器
c 的第一
个
元素
c.rbegin() 返回一个逆序迭代器,它指向
容器
c 的最后一
个
元素
c.rend() 返回一个逆序迭代器,它指向
容器
c 的第一
个
元素
前面的
位置
2.顺序
容器
添加
元素
操作:注意:
容器
元素
都是副本,被复制的原始值与新
容器
中的
元素
各不相
C++ 语言
65,213
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章