如何比较2个地图的数据,如
std::map<std::string,shared_ptr<A>>
其中A是struct
类型。我需要在数据类型序列化后进行比较。
例如。
struct A
{
int age;
std::string name;
}
感谢
答案 0 :(得分:2)
要遍历地图,请使用迭代器:
typedef std::map<std::string, shared_ptr<A> > Container_Type;
Container_Type my_map;
Container_Type::iterator iter;
for (iter = my_map.begin(); iter != my_map.end(); ++iter)
(
// Do stuff here
}
可以通过以下方式访问地图的字段:
std::string key;
key = iter->first;
shared_ptr<A> value = iter->second;