循环删除map
std::map
by ruchong - C/C++ - 2007-11-07 21:48:03 阅读(6796) 回复(7)
形如下面的代码:
map
大家好我想问大家一下,为什么在c++中的map中删除了的元素,还是可以被find到…………很奇怪的,这样的话怎么才能真正做出正确的判断呢?
#include
google map 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/27042/showart_730145.html
java.util 接口 map 所有已知子接口: Concurrentmap , Sortedmap 所有已知实现类: Abstractmap , Attributes , AuthProvider , ConcurrentHashmap , Enummap , Hashmap , Hashtable , IdentityHashmap , LinkedHashmap , PrinterStateReasons , Properties , Provider , RenderingHints , TabularDataSupport , Treemap , UIDefaults , WeakHashmap public interface map 将键映射到值的对象。一个映射不能包...
本文重点介绍Hashmap。首先介绍一下什么是map。在数组中我们是通过数组下标来对其内容索引的,而在map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value。在下文中会有例子具体说明。 再来看看Hashmap和Treemap有什么区别。Hashmap通过hashcode对其内容进行快速查找,而 Treemap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用Treemap(Hashmap中元素的排列顺序是不...
import java.util.map; import java.util.Hashmap; import java.util.Iterator; public class Test{ public static void main(String[] args){ map hashmap=new Hashmap(); hashmap.put("key1",new String("value1")); hashmap.put("key2",new String("value2")); hashmap.put("key3",new String("value3")); hashmap.put("key4",new String("value4")); hashmap.put("key5",new String("value5")); //创建Ha...
template <
typename KEY,
typename VALUE,
typename IMPL
>
class map
{
public:
typedef mapEntry
我现在想在map中存储指针数据。那么当map构造之后,如果没有向里面添加记录,那么map里面的所有指针数据是否会初始化为NULL,或者不确定??? 假如不确定,我用iterator遍历的话,岂不是可能会非法读写内存?:oops: :shock: for (map_ITER itr=mymap.begin(); itr!=m_mymap.end(); itr++) pointer =(*itr).int_id_; ................ 我现在往map中加了一条记录,而且map的size也为1,但上面的遍历却循环了N次!是不是en...
while(getline(cfg_st,line,'\n'))
{
key.clear();
value.clear();
if(0==parseline(line,key,value)) cfg_map.insert(make_pair(key,value));
}
上边的代码中cfg_map是申请的一个map
代码定义部分如下,出现了记录能入到容器中,可用find函数查找时却说查找不到是什么原因,是因为比较函数出现问题,还是因为memcmp函数的问题?(换了注释部分的比较函数却可以查找),谢谢 Record: Type:SMS,Code:00000001,Add:10661700,Sub:- typedef struct BUS_SCRIPT_KEY{ char BusType[8 + 1]; char BusCode[30 + 1]; char AddCode[30 + 1]; char SubBusCode[30 + 1]; ...