首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
100
问题
有如下程序: #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://www.kaotiyun.com/show/TPAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
类内部定义的______和______数据不能被不属于该类的成员函数来存取,定义为______的数据,可以在类外部进行存取。
以下程序的执行结果是______.#include
有如下类的定义。那么空格处的语句是()。classMyClass{____________intx,y;public:MyClass(intx1=0,inty1=0){
运算符重载仍然保持其原来的优先级、________和________
使用ifstream流类定义一个流对象并打开一个磁盘文件与用使用fstream流类定义一个流对象并打开一个磁盘文件默认打开方式分别为______和没有默认。
下列输出字符,A,的方法中,错误的是()
有关构造函数的说法中错误的是
即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员,这说明继承具有
设有如下关系表:则下列操作中正确的是
在下面函数的横线处填上适当的内容,使该函数能够利用递归方法求解字符串str的长度(不得使用系统提供的字符串处理函数)。intGetLen(char*str){if(______)return______;e
随机试题
患儿男性,6岁,误服有机磷30ml后3小时,救护车送入急诊室,立即进行的抢救措施是
3岁女孩。近2个月来低热、盗汗,精神、食欲差,PPD(+++),全身未找到结核灶,胸部X线检查未见异常。可能的诊断为
中耳手术不宜使用的麻醉气体是
矿业工程质量检验方法的类型有()。
用友软件中,填制凭证的功能通常包括()。
计算2009年企业应缴纳的企业所得税为()万元。
协同环境可以连接多个【】使不同位置的用户能进行交互、仿真。
Questions14-17Thetexthas8paragraphs(A-H).Whichparagraphdoeseachofthefollowingheadingsbestfit?*
THENORSEINNORTHAMERICA1TheNorsemadethefirstdocumentedEuropeanvoyagestoNorthAmerica,andthereisevidenceoft
WhoLives?WhoDies?WhoDecides?A)SomehavecalleditaRighttoDiecase.OthershavelabeleditaRighttoLivecase.Onegr
最新回复
(
0
)