问题 填空题

下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。 class MyClass { int *x; public: MyClass(int a) : ~MyClass(); }; MyClass::MyClass(int a) { 【12】 ; } MyClass::~MyClass() { 【13】 ; }

答案

参考答案:[12] x=newint(a) [13]deletex

解析: 本题考核new和delete的使用。由题可知,在类MyClass的构造函数中,是申请内存空间,并让指针x指向构造函数的行参a。所以构造函数的函数体应该为“x=new int(a) ;”。在类MyClass的析构函数中,是释放类的私有成员,即指针变量x,所以析构函数的函数体应该为“deletex;”。

判断题
单项选择题