gpt4 book ai didi

c++ - 迭代 vector/ map 数据结构 C++

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:59:13 24 4
gpt4 key购买 nike

这些天我一直在广泛使用map/vector,但对它们的迭代有疑问

哪个更好?

for(vector<string>::iterator it=myvec.begin(); it!=myvec.end(); ++it){
}

for(int i=0; i < myvec.size(); i++){ 
myvec[i]
}

首先,他们的目的是做同样的事情吗?

最佳答案

对于迭代 vector ,两者都同样有效。我偏爱迭代器,因为我见过用索引做的坏事——主要是有人使用一个容器的索引到达另一个容器。如果第二个容器较小,这将不起作用。

如果您只是想为每个元素做一些事情,您可以使用 BOOST_FOREACH .

std::list<int> list_int( /*...*/ );
BOOST_FOREACH( int i, list_int )
{
// do something with i
}

关于c++ - 迭代 vector/ map 数据结构 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5006097/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com