腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
存储
STL
列表
迭代
器
的指针安全吗?
c++
、
list
、
stl
、
iterator
我知道任何
STL
列表的插入或删除操作都不会使他们的
迭代
器
失效
。但是,我不确定list是否仍然保留
迭代
器
本身。 那么,我可以存储列表
迭代
器
的指针并在以后使用吗?
浏览 3
提问于2011-10-15
得票数 1
2
回答
mingw g++ vector<T>::insert错误
c++
、
stl
、
vector
、
iterator
vector<int> nums;nums.push_back(1);nums.push_back(3); it++; for(vector<int>::iterator jt = nums.begin(); jt != nums.end(); jt++) {
浏览 2
提问于2010-12-19
得票数 0
回答已采纳
2
回答
带deque随机访问
迭代
器
的无效
迭代
器
c++
、
stl
我正在阅读斯科特迈尔斯的有效
STL
。在第1项中,作者提到了如何在各种容器中进行选择,下面是我难以理解的文本片段。如果有一个具有随机访问
迭代
器
的序列容器,只要不删除任何内容,并且只在容器的末端进行插入,对数据的指针和引用就不会
失效
吗?这是一个非常特殊的情况,但如果是你的情况,德克是你梦想的容器。(有趣的是,deque的
迭代
器
可能在只在容器的末端进行插入时
失效
。deque是唯一的标准
STL
容器,其
迭代
器
可能无效,而不需要
浏览 7
提问于2012-11-20
得票数 4
回答已采纳
8
回答
缓存终端
迭代
器
-好主意还是坏主意?
c++
、
stl
、
iterator
、
containers
一般来说,为了提高效率和速度,缓存终端
迭代
器
(特别是
STL
容器)是个好主意吗?++it;在什么情况下,最终价值将
失效
?从容器中擦除会导致在中所有的
STL
容器或仅仅一些容器中的结束
失效
吗?
浏览 6
提问于2010-06-21
得票数 18
回答已采纳
2
回答
迭代
器
失效
规则
c++
、
stl
、
iterator
、
invalidation
当在
STL
容器类(Vector,Dequeue,list,map,multimap,set,multiset)上操作时,
迭代
器
失效
的通常规则是什么。是否可以分类和总结一些C++程序员在使用容器及其
迭代
器
时必须注意的一般规则/指南?
浏览 0
提问于2010-11-07
得票数 6
回答已采纳
2
回答
C++
迭代
器
应该能够在传递最后一项后递减吗?
c++
、
stl
、
iterator
我一直在修改我的容器,使其与
STL
兼容。我已经修改了我的
迭代
器
,使其具有必要的功能。它们都是随机访问
迭代
器
。目前,它们与所有适用的
STL
算法一起工作得很好。但是我的一个
迭代
器
一旦
失效
(超出范围)就不能正常工作了。有必要拥有这个属性吗?具体地说,我害怕end()
迭代
器
,它不能递减。请注意,它可以与其他有效
迭代
器
进行比较,甚至可以计算距离。目前
迭代
<
浏览 4
提问于2011-05-23
得票数 4
回答已采纳
1
回答
如果
迭代
器
在
STL
容器中
失效
,指针是否
失效
?
c++
、
pointers
、
stl
、
iterator
我试图理解向量中
迭代
器
失效
的概念。从我所做的一些阅读中,我发现如果一个向量包含7个元素,而您删除了第5个索引上的元素,那么从第5个元素开始的
迭代
器
就
失效
了。//Case 1可以肯定地说,对于
STL
容器,如果
迭代
器
失效
,那么指针也会
浏览 2
提问于2015-09-26
得票数 1
回答已采纳
1
回答
STL
容器向前和向后行走
c++
、
list
、
stl
、
iteration
、
reverse
一个基本的问题,我正在寻找一个
STL
容器,适合以下类型的用途: 1)支持正规的前向
迭代
。
浏览 2
提问于2013-02-06
得票数 0
回答已采纳
4
回答
指向容器中的元素的指针
c++
、
stl
、
pointers
假设我有一个目标:{ Foo(int bar) bar_(bar) {}我有一个包含Foos的
STL
容器,可能是一个向量,我采取似乎合理的假设是,将使容器中的
迭代
器
失效
的操作也会使指向容器元素的数据成员的指针
失效
,而且如果一个操作不使
迭代
器
失效
,这些指针仍然
浏览 1
提问于2010-04-02
得票数 4
回答已采纳
6
回答
关于使
迭代
器
无效
c++
STL
容器的问题是,当容器更改时,
迭代
器
可能
失效
。容器是否可以通过添加一个调用has_changed()来宣布它已经改变了?疯了吗? 编辑感谢一堆好的回复和思考。
浏览 5
提问于2011-05-18
得票数 4
回答已采纳
3
回答
std::list和iterator
失效
的拼接()
c++
、
list
、
containers
、
iterator
显式地声明所有
迭代
器
,包括指向正在移动的元素的
迭代
器
仍然有效。没有提到splice()方法的
迭代
器
失效
属性,而C++标准明确声明它使所有
迭代
器
和对正在拼接的元素的引用无效。在实践中,拼接()按照SGI的定义工作,但在microsoft
STL
实现的调试/安全SCL版本(严格遵循标准的字母)中,我得到断言失败(取消引用无效
迭代
器
)。现在,我使用list正是因为我希望在列表之
浏览 5
提问于2008-09-27
得票数 12
1
回答
映射线程安全和
迭代
器
失效
c++
、
multithreading
、
stl
.); }不会发生任何删除(至少在程序终止之前),唯一的操作是在foo中添加元素,并在bar中
迭代
它们。现在,我了解到
STL
容器不是线程安全的,我正在使用myMap::operator[]同时执行一个非const操作。我感到困惑的是,由于
STL
find不改变底层映射,而且由于myMap::operator[]不会使
迭代
器
或引用
失效
,这是否仍然被认为是不安全的?在我的想法中,我看到了一点冲突:我
浏览 2
提问于2017-10-26
得票数 1
回答已采纳
3
回答
什么是安全的非空
STL
擦除?
c++
、
stl
、
iterator
、
hashmap
假设我有一个hash_map和一段代码,比如i = hash_map.erase(i)hash_map.erase(i++) 安全(即不会使
迭代
器
失效
或做任何其他意想不到或不愉快的事情)?请注意,这是一个hash_map。
浏览 0
提问于2008-10-20
得票数 4
回答已采纳
2
回答
C++
STL
向量
迭代
器
不兼容
c++
、
stl
、
vector
FDRFreq.erase(iter); else{ }此部分用于擦除数据长度小于标准值的FDRFreq向量项,但调试断言失败:向量
迭代
器
不兼容我是C++
STL
的新手,谢谢你的帮助。
浏览 2
提问于2012-04-23
得票数 1
回答已采纳
4
回答
如何在c++中从set<int>中删除所有偶数
c++
、
set
、
stdset
我是C++的新手。我想知道有经验的程序员如何做到这一点。set<int> s;s.insert(2);s.insert(4);if (!(*itr % 2))}
浏览 0
提问于2010-01-19
得票数 10
回答已采纳
3
回答
使用索引安全的方式
迭代
STL
容器,以避免使用锁?
c++
、
performance
、
stl
、
locking
我想知道以下面的方式遍历
STL
容器(如向量)是否安全,以避免锁定读/写,但只允许任何“写”线程执行push_back()操作。for (size_t i = 0; i < vec.size(); i++) const T& t = *vec[i];} 我知道
迭代
器
可能会因为容器的变化而
失效
,但如果我们确保初始容器的大小足够大,那么在不锁定读或写的情况下
迭代
元素也应该是安全的。
浏览 1
提问于2013-03-13
得票数 1
回答已采纳
4
回答
迭代
std::map<X,std::vector<Y> >并对向量进行排序
c++
、
stl
、
map
、
iterator
当
迭代
std::map<X,std::vector<Y> >时,我可以对向量进行排序吗,或者这可能会使
迭代
器
无效? 换句话说,下面的代码可以吗?
浏览 0
提问于2010-11-24
得票数 4
回答已采纳
1
回答
迭代
器
在排序或删除元素后是否有效?这是一个定时炸弹吗?
c++
、
qt
、
iterator
我只是想问,在元素的排序、或删除之后,
迭代
器
是否有效。当我们插入到容器中时,可以重新分配它以找到更多的空间并使现有的
迭代
器
失效
。但是,元素的排序和删除会发生什么呢?这能迫使集装箱重新分配吗?
浏览 1
提问于2012-02-04
得票数 2
回答已采纳
3
回答
向量中允许的活动
迭代
器
的数量
c++
、
templates
、
vector
、
iterator
、
standards
对于允许多个活动
迭代
器
的容器,是否有一个特殊的名称?
浏览 0
提问于2010-08-07
得票数 0
回答已采纳
4
回答
为什么在达到容量后,在向量中插入时,C++不负责
迭代
器
?
c++
、
vector
、
iterator
我写这个小代码只是为了看看
迭代
器
实际上是如何
失效
的,并且不会在达到其容量后指向向量的更改位置。这也可能导致一些难以调试的行为。我知道一种安全的工作方式是总是在使用
迭代
器
之
浏览 0
提问于2012-05-01
得票数 5
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
迭代器
可迭代对象和迭代器
Python迭代器
可迭代对象,迭代器,生成器
python设计模式:迭代器模式——迭代器与生成器
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券