我有一张如下所示的地图。
我使用了一些元素来填充这个inner_map,每个内部map对象也初始化了一些元素。所以我的问题是如何清空outer_map,以便我可以重新填充数据?outer_map.clear()会起作用吗?当你在这里调用clear时,内部到底发生了什么?有人能提供一些内部细节吗?
struct B {
int b1;
int b2;
int b3;
};
struct A {
B a1;
B a2;
};
unordered_map<int, unordered_map<int, A>> outer_map;
我使用了一些元素来填充这个inner_map,每个内部map对象也初始化了一些元素。所以我的问题是如何清空outer_map,以便我可以重新填充数据?outer_map.clear()会起作用吗?当你在这里调用clear时,内部到底发生了什么?有人能提供一些内部细节吗?
typedef struct
,它是多余的,没有任何好处,只会带来麻烦。 - Slavaouter_map.clear()
应该能够正常工作,因为内部映射是按值保存的--它们的析构函数将被调用。除此之外,你的“例子”还有几个问题(typedef
是什么意思--这不是C语言吧?)。 - DevSolar