- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C作业4答案
作业2讲评
一、选择题
1. 类MyClass的定义如下:
class MyClass
{
public:
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 MyClass
{
public:
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;是把a[0]的值赋给变量p
D)语句int *p=a;是把a[1]的值赋给变量p
7 关于new运算符的错误的描述是_______。A
A)使用运算符new创建对象数组时必须定义初始值
B)使用运算符new创建对象时,会调用类的构造函数
C)运算符new可以用来动态创建对象和对象数组
D)使用new运算符创建的对象可以使用运算符delete删除
使用运算符new创建对象数组时不能为该数组定义初始值,
包容类Contain和内嵌类Embed定义如下:
#include “iostream.h”
class Contain
{
private:
int x;
protected:
int z
您可能关注的文档
最近下载
- 动量守恒定律(一)动量守恒定律(一).ppt VIP
- 黄精趁鲜切制技术规程.docx VIP
- 基于SpringBoot的医院预约挂号系统的设计与实现.docx VIP
- -基于java web的酒店管理系统设计与实现.doc VIP
- 《中药材产地趁鲜切制技术规程 苍术》DB14T 3309-2025.pdf VIP
- 人教版九年级全一册英语单词表 (2025).pdf VIP
- 外墙修缮工程措施方案(3篇).docx VIP
- 《中学思想政治学科课程标准与教材分析》课程教学大纲.docx VIP
- Unit 7 What’s the highest mountain in the world教学设计-教案.docx VIP
- 《高中思想政治》(必修1)课程纲要.doc VIP
原创力文档


文档评论(0)