首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
2013-05-30
41
问题
有如下程序: #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。所以,首先被构造的是p1(y),输出2;第二个被构造的是p2(x),输出1;最后调用析构函数,输出val的值3;析构函数调用顺序与构造函数相反。故最后输出213312。
转载请注明原文地址:https://kaotiyun.com/show/82Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出结果是()。#include<iostream>usingnamespacestd;voidmain(){ints;for(intk=2;k<6;k+=2)s=1;for(intj=k;j<6;j++)s+=j;cou
函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是()。
目前,有两种重要的高级语言,分别是结构化程序设计和【】。
下列有关拷贝构造函数的描述中错误的是()。
下面函数用来求出两个整数之和,并通过形参传回两数相加的结果。请将函数补充完整。intadd(intx,inty,【】z){【】=x+y;}
有如下程序:#include<iostream>usingnamespacestd;classAA{intn;public:AA(intk):n(k){}intget(){ret
下面是关于ios类的叙述,正确的是()。
下列成对的表达式中,运算符“/”的意义相同的一对是()。
软件生命周期一般可分为这样几个阶段:问题定义、可行性研究、【】、设计、编码、测试、运行和维护。
下列不属于算法的基本特征的是______。
随机试题
某先生辞去月薪1000元的工作,取出自有存款100000元(月息1%),办一独资企业,如果不考虑商业风险,则该先生自办企业按月计算的机会成本是()
A.食管癌B.胃癌C.大肠癌D.肝癌E.胰腺癌上述哪一种疾患发病率最高
急性心梗时缓解疼痛宜用
药物临床试验期间,不可以申请附条件批准的是
根据《中华人民共和国对外贸易法》的规定,下列情况下我国可限制或禁止有关货物、技术进口或出口的有()。
双代号时标网络图中实箭线末端对应的时标值为( )。
会计电算化定义中所说的会计工作中应用电子计算机为主体的当代电子信息技术包括()等。
变造原始凭证是采取涂改、挖补以及其他方法来改变真实内容的原始凭证。()
PassageOne(1)WhenAndycametoShawshankin1948,hewasthirtyyearsold.Hewasashortneatlittlemanwithsandyhai
RockwellAutomationPowerSystemsLtdRockwellAutomation,aglobalindustrialautomationcompany,isaleadingindustriala
最新回复
(
0
)