免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
作业2讲评一、选择题 1 类MyClass的定义如下:class MyClasspublic: MyClass() value = 0; SetVariable(int i) value = i; private: int value; 则对下列语句序列正确的描述是_。D MyClass *p,my; p=&my; A)语句p=&my;是把对象my赋值给指针变量p /把对象my的地址赋值给指针变量p B)语句MyClass *p,my;会调用两次类MyClass的构造函数 /调用1次 C)对语句 *p.SetVariable(5)的调用是正确的 /应为(*p) . SetVariable(5) D)语句p-SetVariable(5)与语句my.SetVariable(5)等价2. 类MyClass的定义如下:class MyClasspublic: MyClass( ) MyClass(int i) value = new int(i); int* value; 若要对 value赋值, 则下面语句正确的是:_D A) MyClass my; my.value =1000; /my.value应存放地址,无法直接赋值B) MyClass my; *my.value =1000; /my.value没初始化,*(my.value)=1000内存出错C) MyClass my; my.*value =1000; /语法错误D) MyClass my(lO);3 对于拷贝构造函数,正确的描述是_。A A)在C+语言中,如果不自定义类的拷贝构造函数,则每个类都有默认的拷贝构造函数 B)必须为每个类定义拷贝构造函数 C)如果要使用拷贝构造函数,则必须在类中先定义D)当定义了类的构造函数时,如果要使用拷贝构造函数,则必须定义拷贝构造函数若没定义构造函数、拷贝构造函数、析构函数,使用默认的函数,但若定义了这类函数默认的函数自动失效。4 对于拷贝构造函数和赋值操作的关系,正确的描述是_。C A)拷贝构造函数和赋值操作是完全一样的操作 B)进行赋值操作时,会调用类的拷贝构造函数 C)当调用拷贝构造函数时,类的对象正在被建立并被初始化D)拷贝构造函数和赋值操作不能在同一个类中被同时定义调用拷贝构造函数是定义一个新对象,赋值操作是对一个已存在的对象进行更新。5. 对下列语句正确的描述是_。C const int *x; / int *const x; / A)语句的含义是指针变量x不能更改 B)语句的含义是指针变量x所指向的值不能更改 C)语句的含义是指针变量x不能更改D)语句和是相同含义的不同定义方式int *const x;/定义一个常量指针,x不能更改,*x可更改。 如int y,t;const int *x=&y; x=&t;/错 *x=30; /对const int *x;/定义一个常量的指针(或称指针常量),x可更改,*x不可更改。 如:int y,t; const int *x=&y; *x=t;/错 x=&t; /对6 有如下定义语句:int a=1,2,3,4,5;,则对语句int *p=a;正确的描述是_B 。 A)语句int *p=a;定义不正确 B)语句int *p=a;初始化变量p,使其指向数组对象a的第一个元素 C)语句int *p=a;是把a0的值赋给变量p D)语句int *p=a;是把a1的值赋给变量p7 关于new运算符的错误的描述是_。A A)使用运算符new创建对象数组时必须定义初始值 B)使用运算符new创建对象时,会调用类的构造函数 C)运算符new可以用来动态创建对象和对象数组D)使用new运算符创建的对象可以使用运算符delete删除使用运算符new创建对象数组时不能为该数组定义初始值,8. 包容类Contain和内嵌类Embed定义如下:#include “iostream.h”class Containprivate: int x;protected: int z;public: class Embed private: int y; public: Embed() y=100; int EmbedFun(); MyEmbed; int ContainFun(); 对上面的定义,正确的描述是_。A A)定义类Embed对象的语句是:Contain:Embed embed; B)类Contain的成员函数ContainFun()中可以用MvEmbed.y的方式访问类Embed 的私有成员y C)类Embed的成员函数EmbedFun()中可以直接访问类Contain的私有成员xD)类Embed的成员函数EmbedFun()中可以直接访问类Contain的保护成员z在类Contain内定义类Embed,类Embed称内嵌类,类Contain称包容类。内嵌类的成员函数对包容类的成员没有访问特权,反之亦然。二、 填空题9 const修饰符的语义是_修饰在它左边出现的类型描述符_。10 常量对象应_初始化_,并且不能在生成之后修改。11 在C+语言中,每个类都有一个隐含的指针叫做_this_指针。该指针指向 _正在调用成员函数的对象_。12 当一个类对象的成员函数被调用时,该成员函数的_ this指针_指向调用它的对象。13 如果一个数组中的每个元素都是同一个类的对象,则该数组被称为_对象数组_。14 指向数组的指针是指_该指针指向一个数组_。15 指针数组是指_该数组中每个元素都是指针_。16 有如下定义语句:MyClass *p;,则执行p=new MyClass;语句时,将自动调用该类的_构造函数_。执行delete p;语句时,将自动调用该类的_析构函数_17 有如下定义语句:MyClass *p10;,则当类对象数组指针p离开它的作用域时,系统自动调用该类析构函数_0_次。18 有如下定义语句:MyClass p10;则系统自动调用该类构造函数_10_次。当类 对象数组p离开它的作用域时,系统自动调用该类析构函数_10_次。19 定义在类中的类被称为_内嵌类_,定义了类的类被称为_包容类_。20 下面的类定义了拷贝构造函数,请完成该类的定义和实现。class MyClasspublic: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 _; 21 下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。class MyClasspublic: MyClass(int a); MyClass();private: int* X;MyClass:MyClass(int a) _X=new int(a) _; MyClass:MyClassO _delete X _;22 下列程序通过把类Distance定义为类Point的友元类来实现计算两点之间距离的功能。请完成该程序。#include -#include class Pointpublic: _friend class Distance _; Point ( _float a=0,float b=0_ ) X=a; Y=b; void Print() cout ”X=” X endl;cout ”Y=” Y endl;private:float X, Y;class Distancepublic: float Dis(Point& p, Point& q);float Distance:Dis(Point& p, Point& q) float result; _result= sqrt(p.X-q.X)*(p.X-q.X)+(p.Y-q.Y)* (p.Y-q.Y)_; cout result endl; return result;void main() Point p(10, 10), q(20, 20); Distance d; d.Dis(p, q);作业4答案:一、选择题:1 D2 D3 A4 C5 C6 B 7 A 8 A 二、填空题:9 修饰在它左边出现的类型描述符10 初始化11 this正在调用成员函数的对象12 this指针13 对象数组14 该指针指向一个数组15 该数组中每个元素都是指针16 构造函数析构函数17 0181
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ESG评价体系纳入广告桌游项目投资决策的长期价值锚点
- 2026年滁州城市职业学院高职单招笔试综合素质试题库含答案解析3套试卷
- 2026年湖南科技职业学院高职单招笔试英语试题库含答案解析3套试卷
- 2026年湖南三一工业职业技术学院高职单招笔试综合素质试题库含答案解析3套试卷
- 2026年海南工商职业学院高职单招笔试职业技能测验试题库含答案解析3套试卷
- 2026年浙江横店影视职业学院高职单招笔试语文试题库含答案解析3套试卷
- 2026年浙江住院医师-浙江住院医师中医骨伤科历年参考题库含答案解析
- 2026年泉州职业技术大学高职单招笔试物理试题库含答案解析2套试卷
- 2026年河南住院医师-河南住院医师中医耳鼻咽喉科历年参考题库含答案解析
- 2026年河北工业职业技术学院高职单招笔试职业适应性测验试题库含答案解析2套试卷
- 食堂人员食品安全培训课件
- 物流代理加盟合同范本
- 天然气运输管理方案
- 工业自动化设备维护操作规范手册
- 2025年北师大新版数学三年级上册第二单元《测量(二)》教案
- 留置尿管患者居家护理健康宣教
- 房屋租赁法律培训课件
- 食品安全日管控、周排查及月调度记录表
- 《设计构成》课件 第1章 认识设计构成;第2章 平面构成基础
- 2025阀门装配工艺规程
- 非营利组织资金使用情况说明
评论
0/150
提交评论