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

admin2010-03-29  23

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

选项

答案x=newint(a) deletex

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

最新回复(0)