首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include class A { public: A(int n=2):m_i(n){} ~A(){std::cout
有如下程序: #include class A { public: A(int n=2):m_i(n){} ~A(){std::cout
admin
2019-05-22
25
问题
有如下程序:
#include
class A
{
public:
A(int n=2):m_i(n){}
~A(){std::cout<
protected:
int m_i;
};
class B:public A
{
public:
B(int n):m_a2(n),m_al(m_i+1){}
public:
~B()
{
std::cout<
--m_i;
}
private:
A m_a1;
A m_a2;
};
int main()
{
B b(5);
return 0;
}
运行后的输出结果是( )。
选项
A、2351
B、2531
C、5354
D、5534
答案
B
解析
main()函数中调用了B的构造函数,参数为5,接下来B类对象b的构造过程如下:①调用基类A的默认构造函数,构造对象b的基类部分:初始化mj为2。②按照B类中成员的定义顺序,使用成员初始化列表初始化两个A类成员:首先执行m_a1(m_i+1),m_i为基类A中的成员,此时值为2,调用A类的默认构造函数,初始化m_a1.m_i为3;然后执行m_a2(n).调用A类的默认构造函数。初始化m_a2.m_i为5。
接着main()执行return语句,此时对象b需要调用析构函数进行释放,释放过程如下:①首先运行B类的析构函数~B(),输出m_j的值为2,然后将m_i自减1,使得m_i的值为1。②按照B类中成员定义顺序的反顺序,首先调用m_a2的析构函数~A(),释放对象m_a2,输出m_a2.mj的值5;再调用m_a1的析构函数~A(),释放对象m_a1,输出m_a1.mj的值3。③最后调用基类A的析构函数~A(),释放b对象中的基类部分,输出m_i的值1。
由上分析,程序运行结果为:2531。故本题答案为B选项。
转载请注明原文地址:https://kaotiyun.com/show/XB8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
成员初始化列表c++语言规定对基类数据成员的初始化必须在派生类的构造函数中的成员初始化列表中进行。
友元函数此题考查的是非成员函数对类的成员的访问权限,非成员函数只有在声明为类的友元函数才能访问这个类的所有private成员,否则是不能访问类的私有成员的。
A、 B、 C、 D、 A本段程序实现从键盘接收一段字符串,并计算字符串的长度,cin输入流对象会将空白符、回车符、tab键作为终止标志,所以输入Ahcdefgabcd得到的字符串长度为7。
A、 B、 C、 D、 B只有在创建对象时才会调用类的构造函数,在定义指针时不会调用构造函数,本程序共生成了3个同类对象a,b[2]。
A、 B、 C、 D、 B本题考查数据库的关系运算。两个关系的并运算是指将第一个关系的元组加到第二个关系中,生成新的关系。因此,并运算不改变关系表中的属性个数,也不能减少元组个数。两个关系的交运算是包含同时出
下面不属于C++的预定义的流对象是()。A)cinB)iostreamC)clogD)Celt
在软件开发中,需求分析阶段产生的主要文档是()。A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书
下列关于栈的叙述中,正确的选项是()。
下面字符串中,不可以用作C++标识符的是()。
随机试题
红色方向指示信号灯亮时,表示箭头所示方向禁止车辆通行。
食管癌的早期临床表现是
基金托管人由()担任。
某公司向美国出口一批塑料玩具,报检时不需提供()。
票据持有人具有下列情形,不得享有票据权利的有()。
已知非零向量a、b,满足(a+b)⊥(a—b),则|a|______|b|(填“>”“<”或“=”).
居住在海拔200米~500米这一高度内的人口在总人口中所占的比例是( )。海拔200米以上的陆地面积占总面积的比重为多大?
Persons’remarksarementionedatthebeginningofthetextto______.By"Gossipalsoisaformofsocialbonding"(Para.5),P
有以下程序:#include<stdio.h>#defineN4voidfun(inta[][N],intb[]){inti;for(i=0;i<N;i++)b[i]=a[i][i]-a[i][N-1-i];}main(){int
Today,California’spublicschoolsareadisaster.【C1】______bydysfunctionanddisrepair,theyrankatthebottomofthecountry
最新回复
(
0
)