首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include <iostream> using namespace std; class Part{ public: Part(int x=0):val(x) { cout<<val; }
有如下程序: #include <iostream> using namespace std; class Part{ public: Part(int x=0):val(x) { cout<<val; }
admin
2017-10-17
83
问题
有如下程序: #include <iostream> using namespace std; class Part{ public: Part(int x=0):val(x) { cout<<val; } ~Part() { cout<<val; } private: int val; }; class Whole { public: Whole(int x, int y, int z=0):p2(x),p1 (y),val(z) { cout<<val; } ~whole() { cout<<val; private: Part p1,p2; int val; }; int main() { Whole obj (1,2,3); return 0; }程序的输出结果是
选项
A、123321
B、213312
C、213
D、123123
答案
B
解析
本题考查的知识点是:类的构造与析构。建立一个类的对象时,构造函数的执行顺序如下:
①执行基类的构造函数,调用顺序按照各个基类被继承时声明的顺序(自左向右);
②执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序(自上而下:(如果一行声明了多个对象,则还要遵循自左向右)
③执行自身的构造函数。
析构顺序与之相反。本题的Whole类没有基类,但有两个Part类的成员p1和p2。根据它们定义的顺序,应该先构造p1再构造p2,而不是按Whole的构造函数中初始化列表的顺序那样构造。所以,第1个被构造的是p1(y),输出一个2;第2个被构造的是p2(x),输出一个1;最后调用自身构造函数,输出val的值3。析构函数严格与之相反。故输出结果为213312,本题应该选择B。
转载请注明原文地址:https://kaotiyun.com/show/TPAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
程序设计语言的基本成分是数据成分、运算成分、控制成分和
根据下列程序的执行结果,可以断定划线部分的修饰符应为【 】。执行结果:i9afootballiscreated.afootballiscreated.i=10afootballisdestroyed.afootballis
结构化程序设计的一种基本方法是()。
在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为______。
下列关于虚函数的描述中,正确的是()。
如果一个模板声明列出多个参数,则多个参数之间必须使用______隔开,每个参数都必须重复使用关键字______。
使用ifstream流类定义一个流对象并打开一个磁盘文件与用使用fstream流类定义一个流对象并打开一个磁盘文件默认打开方式分别为______和没有默认。
当需要将一个函数boo1isnumber(charc)声明为内联函数时,则此内联函数的函数原型为()。
程序设计分为面向过程程序设计和面向对象程序设计,具有继承性特点的程序设计称为【 】程序设计。
下列选项中合法的用户标识符是()。
随机试题
婴幼儿消化道的发育从胎儿期开始,以后继续发展至()时初具规模。
节流前后,()不变,这是节流过程的主要特征。
烧伤病人气管切开术的指征为
某猪场2岁种公猪,精神沉郁,步态强拘,拱背,腰部触诊敏感,常做排尿姿势。尿检可见红细胞、白细胞、盐类结晶、肾上皮细胞。该病可能的诊断是()
某甲盗窃输电线路正在使用的电线30米,构成破坏电力设备罪,某乙盗窃库房里备用的电线,长度达500米,构成盗窃罪,对于某甲和某乙定性不同的原因在于:
根据以下资料。回答问题。2010年,某省广电实际总收入为145.83亿元,同比增长32.07%。其中,广告收入为67.08亿元,同比增长25.88%;有线网络收入为45.38亿元,同比增长26.35%;其他收入为33.37亿元,同比增长57.3%。20
幼儿自我评价能力的特点为()。
强调系统的知识传授,强调课堂教学的作用,强调教材的重要性,强调教师的中心地位。这一思想被称为()
下面的法律规定中,哪些不属于法的要素中的法律规则?()
A、 B、 C、 A原文说“我想用航空邮寄把这封信邮到美国去”。airmail为“航空邮寄”。选项[A]为美国国旗。
最新回复
(
0
)