我有一个应用程序,它在执行期间创建某种类型的对象(例如,“Foo”类),以跟踪一些统计信息,并将它们插入两个 STL 映射中的一个或两个中,例如:
map<Foo*, int> map1;
map<Foo*, int> map2;
我想知道删除 Foo 对象的最佳方法是什么。目前我的解决方案是遍历 map1 和 map2,并将 Foo 指针放入一个集合中,然后在这个集合上进行交互并在每个集合上调用 delete。
有没有更有效的方法,可能使用 auto_ptr?如果是这样,由于 auto_ptr<> 对象不能存储在 STL 容器中,如何?
提前致谢。