题目内容

对于下面的类定义,如果要为其添加一个析构函数,对于析构函数定义正确的是( )。 class MyFirst { private: int a; public: MyFirst(int giva_a=0){a=give_a;} }

A. ~MyFirst(){}
B. void ~MyFirst(){}
C. ~void MyFirst(){}
D. ~MyFirst void(){}

查看答案
更多问题

对于下面声明的类,对于所给的几个语句,正确的是(假设选项中所给语句是主函数中的语句)( )。class MyClass{public: MyClass(int x):data(x) {}private: int data;void show();};

A. MyClass *pm;
B. MyClass mfirst;
C. MyClass.data=6;
D. MyClass.show();

下列说法错误的是( )。

A. 构造函数可以对静态数据成员进行初始化
B. 构造函数可以设置默认参数
C. 构造函数可以在说明类变量时自动执行
D. 构造函数可以重载

#includeusing namespace std;class Name{char name[20];public:Name(){strcpy (name,"");cout<<'?';}Name(char *fname){strcpy (name, fname);cout<<'?';}};int main(){Name names[3] ={Name("张三"),Name("李四")};return 0;}运行此程序输出符号?的个数是( )

A. 0
B. 1
C. 2
D. 3

有如下的程序:#include #includeusing namespace std;class MyString{public:MyString(const char *s);~MyString() {delete []data;}protected:unsigned len;char * data;};MyString::MyString(const char *s){len = strlen(s);data = new char[len+1];strcpy(data,s);}int main(){MyString a("C++ Programming");MyString b(a);return 0;}在运行上面的程序时出错,出错的原因是()。

A. 构造函数的实参不允许是本类的对象
B. 没有定义实现深层复制(深拷贝)的拷贝构造函数
C. 构造对象a时实参与形参类型不符
D. 系统不能生成缺省的拷贝构造函数

答案查题题库