您好在cpp类别XI中有一个
class X{
private:
std::map<some_struct, int> C;
}
其中some_struct定义为:
typedef struct{
int a;
int b;
int c;
}some_struct;
我的问题是:是否需要在X的析构函数中指定有关映射C的任何内容?如果是,X的析构函数应该对地图C采取什么行动?
不,您不需要为some_struct
或指定析构函数class X
对于任何类型,它都是由编译器自动生成的。只要没有在动态存储中使用new
或显式分配给类的任何东西new []
,就不需要编写应用delete
或delete[]
操作的析构函数。
另外,对于编写c ++代码(vs c),您不需要使用该typedef
语法:
struct some_struct {
int a;
int b;
int c;
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句