我想创建一个静态映射在我的类的构造函数中声明。 这张地图将被初始化并用一种方法填充数据,并以另一种方法释放。 这是正确的方法吗?正确的方式来初始化一个映射并删除在C + +
using namespace std;
#include <map>
struct a {
string b;
string c;
}
class aClass:public myClass
{
public:
aClass();
virtual ~aClass();
private:
map<string, a> myMap;
void method(int a);
void amethod(int b);
}
void aClass::method(int a)
{
myMap = new map<string, a>;
// Addition of elements;
}
void aClass::amethod(int b)
{
// retrival of elements
myMap.clear();
delete myMap;
}
在你的代码中,'myMap'不是'static'。 “静态”是什么意思? –
为什么你认为你需要新建一个地图并在以后删除它?只需按值保存地图,并在适当的时间调用clear()。 –
我怀疑你的意思是包含[sli]标签。我编辑了你的文章,以包含[stl]标签。 –