1

我正在处理地图,我将数据存储到具有相同键的两个不同的地图(它是嵌套地图)中,他们是否有任何方式将此数据存储到单个 DS 而不是两个不同的嵌套地图中。以下是我的两个嵌套地图:

std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map1;

std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map2;

这里 map1 和 map2 具有相同的键值。

我为特定目的维护了两张不同的地图。我们可以将两张地图都存储在单个 DS 中吗?这样每个键(即每个键都会有两个内部映射)。

4

1 回答 1

2

std::map为什么不使用包含所有必需数据的单个?

示例代码

struct Data
{
    std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData1;
    std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData2;
};

std::map<KeyStruct, Data> mMapData;
于 2015-04-10T04:21:29.640 回答