我在地图上工作,我将数据存储到两个具有相同键的不同地图(它是嵌套地图),是他们以任何方式将这些数据存储到单个DS而不是两个不同的嵌套地图中。 以下是我的两个嵌套地图:
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map1;
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map2;
此处map1和map2具有相同的键值。
我为特定目的保留了两张不同的地图。我们可以在单个DS中存储这两张地图吗?这样每个键(即每个键都有两个内部映射)。
答案 0 :(得分:2)
为什么不将一个std::map
与所有必需的数据一起使用?
struct Data
{
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData1;
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData2;
};
std::map<KeyStruct, Data> mMapData;