正在加载图片...
MyClass *p,my;p=&my; A语句p=&my;是把对象my赋值给指针变量p B语句MyClass*p,my,会调用两次类MyClass的构造函数 C对语句*p.Set Variablse(5)的调用是正确的 D语句p->Set Variable(5)与语句my.Set Variable(5)等价 答案:D 注释:A中语句p=&my;是把对象my的地址赋值给指针变量p。B中语句只调用一次类 MyClass的构造函数,指针定义不调用类的构造函数。C中语句的正确调用方式是 (*p).SetVariablse(5) 5有如下定义语句:inta0={1,2,3,4,5},则对语句int*p=a,正确的描述是 A语句int*p=a;定义不正确 B语句int*p=a,初始化变量p,使其指向数组对象a的第一个元素 C语句int*p-a;是把aO]的值赋给变量p D语句int*p=a;是把aI]的值赋给变量p 答案:C 填空 1定义在类中的类被称为内嵌类,定义了类的类被称为包容类。 2在C十十语言中,每个类都有一个隐含的指针叫做hs指针。该指针指向正在调用成员函 数的对象。 3如果一个类是聚集类,即该类定义了其他类的子对象,则该类的对象和子对象先被初始化 的是类的子对象。 4如果一个数组的每个元素都是同一个类的对象,则该数组被称为对象数组。定义语句 MyClass p[I0:则系统自动调用该类构造函数10次,当类对象数组p离开它的作用域时,系 统自动调用该类析构函数1Q次。定义语句MyClass*p[10小;则当类对象数组指针p离开它的作 用域时,系统自动调用该类析构函数Q次。 5下面的类定义了拷贝初始化构造函数,请完成该类的定义和实现。 class MyClass { public: MyClass(int xx=0,int yy=0){X=xx;Y=yy;) MyClass(MyClass&p) 拷贝初始化构造函数 Private: int XY: } MyClass:MyClass(MyClass&p) 拷贝初始化构造函数的实现 { X=p.X Y=p.Y } 写出下列程序的运行结果 1 include <iostream.h> class MyClass 2MyClass *p,my; p=&my; A 语句 p=&my;是把对象 my 赋值给指针变量 p B 语句 MyClass *p,my; 会调用两次类 MyClass 的构造函数 C 对语句*p.SetVariablse(5)的调用是正确的 D 语句 p->SetVariable(5) 与语句 my.SetVariable(5)等价 答案:D 注释:A 中语句 p=&my;是把对象 my 的地址赋值给指针变量 p。B 中语句只调用一次类 MyClass 的构造函数,指针定义不调用类的构造函数。C 中语句的正确调用方式是 (*p).SetVariablse(5) 5 有如下定义语句:int a[]={1,2,3,4,5};,则对语句 int *p=a;正确的描述是 。 A 语句 int *p=a;定义不正确 B 语句 int *p=a;初始化变量 p,使其指向数组对象 a 的第一个元素 C 语句 int *p=a; 是把 a[0]的值赋给变量 p D 语句 int *p=a; 是把 a[1]的值赋给变量 p 答案: C 填空 1 定义在类中的类被称为 内嵌类 ,定义了类的类被称为 包容类。 2 在C++语言中,每个类都有一个隐含的指针叫做this指针。该指针指向正在调用成员函 数的对象。 3 如果一个类是聚集类,即该类定义了其他类的子对象,则该类的对象和子对象先被初始化 的是类的子对象。 4 如果一个数组的每个元素都是同一个类的对象,则该数组被称为对象数组。定义语句 MyClass p[10]; 则系统自动调用该类构造函数10次,当类对象数组p离开它的作用域时,系 统自动调用该类析构函数10次。定义语句MyClass *p[10]; 则当类对象数组指针p离开它的作 用域时,系统自动调用该类析构函数0次。 5 下面的类定义了拷贝初始化构造函数,请完成该类的定义和实现。 class MyClass { public: MyClass(int xx=0,int yy=0){X=xx;Y=yy;} MyClass(MyClass&p) //拷贝初始化构造函数 Private: int X,Y; }; MyClass:: MyClass(MyClass&p) //拷贝初始化构造函数的实现 { X= p.X ; Y=p.Y ; } 写出下列程序的运行结果 1 # include <iostream.h> class MyClass { 2
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有