如何在 C++ 中的不同地图之间共享密钥?
How to share the key across the different map in c++?
我正在处理地图,我将数据存储到两个具有相同键的不同地图(它是嵌套地图)中,他们是否有任何方法可以将这些数据存储到单个 DS 而不是两个不同的嵌套地图中。
以下是我的两个嵌套地图:
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map1;
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map2;
此处map1和map2键值相同
我出于特定目的维护了两张不同的地图。我们可以将两个地图存储在一个 DS 中吗?这样每个键(即每个键都会有两个内部映射)。
为什么不使用一个包含所有必需数据的 std::map
?
示例代码
struct Data
{
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData1;
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData2;
};
std::map<KeyStruct, Data> mMapData;
我正在处理地图,我将数据存储到两个具有相同键的不同地图(它是嵌套地图)中,他们是否有任何方法可以将这些数据存储到单个 DS 而不是两个不同的嵌套地图中。 以下是我的两个嵌套地图:
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map1;
std::map<KeyStruct, std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > > map2;
此处map1和map2键值相同
我出于特定目的维护了两张不同的地图。我们可以将两个地图存储在一个 DS 中吗?这样每个键(即每个键都会有两个内部映射)。
为什么不使用一个包含所有必需数据的 std::map
?
示例代码
struct Data
{
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData1;
std::map<ClassObjSharedPtr, std::set<ClassObjSharedPtr> > mData2;
};
std::map<KeyStruct, Data> mMapData;