首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";)
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";)
admin
2010-06-06
34
问题
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";) }; class B:public A { A*p; public: B(){cout<<"B";p=new A;} ~B(){cout<<"~B";delete p;} }; int main() { B obj; return 0; } 执行这个程序的输出结果是( )。
选项
A、BAA~A~B~A
B、ABA~B~A~A
C、BAA~B~A~A
D、ABA~A~B~A
答案
B
解析
此题考查的是类的构造函数和析构函数。派生类构造函数的执行顺序为:首先调用基类的构造函数,调用顺序按它们被继承时说明的顺序;然后调用子对象的构造函数,调用顺序按它们在类中说明的顺序;最后是派生类构造函数中的内容。因此本题中,首先调用基类构造函数输出A,然后调用于对象的构造函数输出B, p=new A再调用类A的构造函数输出A,析构函数的调用顺序和构造函数的调用顺序相反。
转载请注明原文地址:https://jikaoti.com/ti/OpW0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>main(){charb[4][10],c;inti,j;for(i=0;i<4;i++){j=0;while((c=getcha
有以下程序:#include<stdio.h>main(){intsum=10.n=1:while(n<3){sum=sum—n;n++;)printf("%d,%d",n,sum);}程序运行后的输出结果是()
数据库系统的三级模式不包括()。
在数据处理中,其处理的最小单位是()。
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例
若按功能划分,软件测试的方法通常分为白盒测试方法和【 】测试方法。
下列哪种说法不符合多态性的含义______。
实现运行时的多态性要使用
多态性指的是()。
在面向对象的程序设计中,将数据和处理数据的操作封装成一个整体就定义了一种事物的类型,称作“类”。类是一种抽象的概念,属于该类的一个实例叫做“______”。
随机试题
标准群钻在后面上磨有两边对称的分屑槽。()
大面积烧伤后2天内,最主要的全身改变是
经行泄泻病因病机描述错误的是
首先提出积聚的病名的医著是()
如图所示(图中单位:mm),阶梯状圆截面钢杆,已知钢的弹性模量E=200GPa,则此钢杆的轴向变形为()。
音速气流在渐缩管道中,压力:
依据《消防法》的规定,火灾扑灭后,为隐瞒、掩饰起火原因,推卸责任,故意破坏现场或者伪造现场,尚不构成犯罪的,可以给予的行政处罚包括()。
个体工商户甲将其现有的以及将有的生产设备、原材料、半成品、产品一并抵押给乙银行,但未办理抵押登记。抵押期间,甲未经乙同意以合理价格将一台生产设备出卖给丙。后甲不能向乙履行到期债务。根据《物权法》的规定,下列选项中,正确的是()。
有以下程序:#include<stdio.h>voidfun(char*a,char*B){while(*a==’*’)a++;while(*b=*A){b++;a++;}}main(){char*s="
ReadcarefullythefollowingexcerptandthenwriteyourresponseinNOLESSTHAN200words,inwhichyoushould:-summarize
最新回复
(
0
)