慎用stl map

来源:互联网 发布:服务器网络不稳定 编辑:程序博客网 时间:2024/05/16 19:32

工作中用到stl map,遇到这样的情况:

将如下的数据放入map<string, string>中,

[

  [key1, value1],

  [key1, value2],

  [key2, value1]

]

结果,由于第2项的key和第1项的key相同,插入第2项后,就把第1项的值冲掉了。

对于这种情况,事实上key并不是某一项的唯一标识,key和value组合在一起才是唯一标识,这种情况下,使用map就不合适了,可以考虑改用list。上例中,可以这样做:

定义

struct Item

{

  string key;

  string value;

};

将这些数据放入list<Item>中


原创粉丝点击