首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include <iostream> using namespace std; class Base { protected: Base( ){cout<<’A’; } Base(char c)
有如下程序 #include <iostream> using namespace std; class Base { protected: Base( ){cout<<’A’; } Base(char c)
admin
2017-10-17
23
问题
有如下程序 #include <iostream> using namespace std; class Base { protected: Base( ){cout<<’A’; } Base(char c) { cout<<c; } }; class Derived: public Base { public: Derived(char c){ cout<<c; } }; int main( ){ Derived d1 (’B’); return 0; } 执行这个程序屏幕上将显示输出
选项
A、B
B、BA
C、AB
D、BB
答案
C
解析
本题考查的是派生类对象的构造。建立派生类对象时,构造函数的执行顺序如下:
(1) 执行基类的构造函数,调用顺序按照各个基类被继承时声明的顺序(自左向右):
(2) 执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序(自上而下):
(3) 执行派生类的构造函数。
所以本题在建立派生类Derived的对象d1时会先调用基类Base的构造,由于派生类中没有通过初始化列表显式构造基类对象,所以调用的是基类的默认构造函数,会输出一个’A’。然后调用自身的构造函数,输出传入的构造参数’B’。故程序输出的结果是:AB。所以应该选择C。
转载请注明原文地址:https://jikaoti.com/ti/vnt0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的运行结果是______。#include<iostream.h>#include<math.h>template<classT>classTAdd//定义类模板TAdd,T为类型{Tx,y;
在C++语言中每个类都有一个______指针,该指针指向正在调用成员函数的对象。
下面对静态数据成员的描述中,正确的是()
C++语言是以()语言为基础逐渐发展演变而成的一种程序设计语言。
编制一个好的程序,首先要确保它的正确性和可靠性,还应强调良好的编程风格。在选择标识符的名字时应考虑()。
下列输出字符,A,的方法中,错误的是()
友元运算符。obj1>obj2被C++编译器解释为()。
已知类Sample中的一个成员函数说明如下:voidSet(Sample&a);其中,Sample&a的含意是()。
有如下程序:#include<iostream>#include<iosream>usingnamespacestd;classBASE{charc;public;BASE(charn):c(n){
下列选项中,正确的C++标识符是
随机试题
在PowerPoint2010中,下列说法中错误的是________。
焊接安全操作规程包括哪些内容。
骨折患者功能锻炼的原则正确的是
工程施工项目质量计划应由( )主持编制。
收款凭证左上角的会计科目为()。
当利率大于零,计息期一定的情况下,下列表述正确的有()。
正强化的表现包括()。
在社会主义市场经济体制下,支配国民经济运行的基本规律是(),
数据透视表窗体是以表或查询为数据源产生一个()的分析表而建立的一种窗体。
根据域名代码规定,表示政府部门网站的域名代码是()。
最新回复
(
0
)