首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
2013-02-27
41
问题
有如下程序: #include<iostream> using namespace std; Class A { public: A(){cout<<“A”;} ~A(){cout<<“~A”;} }; A*p; public: B(){cout<<“B”;p=new A;} ~B(){cout<<“~B”;delete p;} }; 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=newA再调用类A的构造函数输出A;析构函数的调用顺序和构造函数的调用顺序相反。
转载请注明原文地址:https://kaotiyun.com/show/nlVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于指针,以下说法正确的是()。
以下叙述中正确的是()。
以下叙述中正确的是()。
有以下程序:#include<stdio.h>main(){imm=l,n=2,*p=&m,*q==&n,*r;r=P;p=q;q=r;printf("%d,%d,%d,%d\n",m,n,*P,*q);}程序运行后的输出结果是(
设有定义:charp[]={'1','2','3'},*q=P;以下不能计算出一个char型数据所占字节数的表达式是()。
以下选项中合法的C语言常量是()。
以下针对相应语句的注释中,说法错误的是()。
若有定义:charc="hello!";,则以下说法正确的是()。
给定程序MODl1.C中函数char*fun(char*s1,char*s2,char*r)的功能:将两个长度相等的数字字符串当作两个加数,求其代表的数值之和并以字符串的形式存入r所指内存且返回。例如:s1是”723”,s2是”567”
已知类A中的一个成员函数的说明如下:voidSetValue(A&a);则该函数的参数“A&a”的含义是______。
随机试题
Whatiswind?Youcanfeelit,andyoucansometimeshearit,too.Youcan’tseethewind,butyoucanseeallkindsofplantsa
可能引起发热的原因包括
支气管扩张病人提示混合性厌氧菌感染是
简述消化性溃疡的外科手术指征。
限速装置包括()。
下列关于中外合资经营企业非破产清算的表述中,符合中外合资经营企业法律制度规定的有()。
公文的语言应该是()。
A.“铅管”征B.“鹅卵石”征C.“鸟嘴”征D.“杯口”征E.充盈缺损肠套叠的典型X线征象是
法律责任最基本的功能是()
一个关系表的行称为【】。
最新回复
(
0
)