void ~MyClass();
~MyClass(int n);
MyClass();
~MyClass();
第1题:
假定Myclass为一个类,则执行Myclass a[4],*p[2];语句时,自动调用该类的构造函数 ( )次。
A.2
B.3
C.4
D.6
第2题:
假定MyClass为一个类,则该类的拷贝初始化构造函数的声明语句为( )
A.MyClass&(MyClass x);
B.MyClass(MyClass x)
C.MyClass(MyClass &x);
D.MyClass(MyClass *x)
第3题:
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为______。
第4题:
下列程序的执行结果为______。
include<iostream.h>
class Myclass
{
public:
void GetSum(int a);
static int Sum;
prtvate:
int A;
};
int Myclass::Sum=10;//必须在类外部对静态数据成员初始化
void Myclass::GetSum(int a)
{
A=a;
Sum+=A:
}
vold PrintSum(Myclass& A)
{
cout<<"Sum="<<A. Sum<<endl;
}
void main( )
{
Myclass M,N;
M.GetSum(3);
N.GetSum(7);
PrintSum(M);
}
第5题:
假定MyCIass为一个类,那么下列的函数说明中,( )为该类的析构函数。
A.void~MyClass();
B.~MyClass(int n);
C.MyClass();
D.~MyClass();
第6题:
有以下程序#include <iostream>using namespace std;class MyClass{public: MyClass(int n) { number=n; } //拷贝的构造函数 MyClass(MyClass& other) {number=other. number; } ~MyClass() { }private: int number;};MyClass fun(MyClass p){ MyClass temp(p); return temp;}int main() MyClass obj 1 (10), obj 2(0); MyClass obi 3 (obj 1); obj2=fun(obj3); return 0;}程序执行时,MyClass 类的拷贝构造函数被调用的次数是( )。
A.5
B.4
C.3
D.2
第7题:
假定MyClass 为一个类,则该类的拷贝构造函数的声明语句为( )。
A.MyClass& (MyClass x);
B.MyClass (MyClass.x);
C.MyClass (MyClass &x);
D.MyClass (MyClass *x);
第8题:
对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是 ( )。 class MyClass { public: MyClass(int X){n=x;} void SetNum(int nl){n=nl} private: int n; } int f() { MyClass*ptr=new MyClass(45); ______ }
A.MyClass(50)
B.SetNum(50)
C.ptr->SetNum(50)
D.ptr->n=50
第9题:
假定MyClass为一个类,则执行MyClass a[3],*p[2];语句时, 自动调用该类构造函数( )次。
A.2
B.3
C.4
D.5
第10题:
有以下程序 #include<iostream> using namespace std; class MyClass { public: MyClass(int n){number =n; } //拷贝构造函数 MyClass(MyClass& other) {number=other.number;} ~MyClass() {} private: int number; }; MyClass fun(MyClass p) { MyClass temp(p); return temp; } int main() { MyClass Obj1(10),obj2(0); MyClass obj3(obj1); obj2=fun(obj3); return 0; } 程序执行时,MyClass类的拷贝构造函数被调用的次数是
A.5
B.4
C.3
D.2
第11题:
对于下面定义的类MyClass,请在函数f( )中添加对象成员把n的值修改为50。
class MyClass
{
public:
MyClass(int x){n=x;}
void SetNum(int n1){n=n1;}
private:
int n;
};
void f()
{
My Class*ptr=new MyClass(45);
【12】
}
第12题:
MyClass (MyClass x);
MyClass (MyClass&x);
MyClass(&x);
MyClass(x);
第13题:
假定MyClass为一个类,那么下列的函数说明中,( )为该类的析构函数。
A.void~MyClass();
B.~MyClass(int n)
C.MyClass();
D.~MyClass();
第14题:
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为( )
A.MyClass(MyClass x);
B.MyClass(MyClass&x);
C.MyClass(&x);
D.MvClass(x);
第15题:
假定MyClass为一个类,则执行myClass a,b(2),*p;语句时,自动调用该类构造函数( )次。
A.2
B.3
C.4
D.5
第16题:
有以下程序: #include<iostream> using namespace std; class MyClass { public: MyClass(int n){number=n;} //拷贝构造函数 MyClass(MyClass&other) {number=other.number;} ~MyClass() {} private: int number; }; MyClass fun(MyClass p)
A.5
B.4
C.3
D.2
第17题:
对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是( )。 class MyClass { public: MyClass(int X){n:x;} void SetNum(int n1){n=n1;} private: int n; } int f() { MyClass *ptr=-new MyClass(45); ______ }
A.MyClass(50)
B.SetNum(50)
C.ptr->SetNum(50)
D.ptr->n=50
第18题:
下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。
class Myclass {
public:
Myclass(int num);
~ Myclass( );
public:
int *p;
};
Myclass: :Myclass( int hum) {
【 】
Myclass:: ~ Myelass( ) {
【 】;
}。
第19题:
假定MyClass为一个类,那么下列的函数说明中,( )为该类的析构函数。
A.void~MyClass( );
B.~MyC
C.ass(intn);
D.MyClass( );
E.~MyClass( );
第20题:
假定MyClass为—类,执行MyClass a[3],*p[2];语句时会自动调用该类构造函数( )次。
A.2
B.3
C.4
D.5
第21题:
假定MyClass为一个类,那么下列的函数说明中,( )为该类的析构函数。
A.void~MyClass( );
B.~MyC
C.ass(intn);
D.MyClass( );
E.~MyClass( );
第22题:
以下程序的执行结果为( )。 #include<iostream.h> class myClass { Dublic: myClass(int data) ; myClass(){value=0; }; myClass(myClass &obj); void print(){ cout<<value<<end1; } ~myClass(){} private: int value; }; myClass::myClass(int data) {value=data; } myClass::myClass(myClass &Obj) { value=obj.value; } void main() { myClass a(100); myClass b(a) ; b.print(); }
A.0
B.100
C.10
D.程序编译时出错
第23题:
MyClass&(MyClass x);
MyClass(MyClass x);
MyClass(MyClass&x);
MyClass(MyClass*x);