首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void f(){cout<<"B";} void g(){cout<<"B";) }; class D:pub
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void f(){cout<<"B";} void g(){cout<<"B";) }; class D:pub
admin
2015-11-24
82
问题
有如下程序:
#include<iostream>
using namespace std;
class B{
public:
virtual void f(){cout<<"B";}
void g(){cout<<"B";)
};
class D:public B{
public:
void f(){cout<<"D";}
void g(){cout<<"D";}
};
void h(B*p){p->f();p->g();}
int main(){
D obj;
h(&obj);
return 0;
}
运行这个程序的输出结果是( )。
选项
A、DD
B、BB
C、BD
D、DB
答案
D
解析
在基类B中定义虚函数f()和成员函数g(),而在派生类D中定义了函数f()和同名函数g( )。而函数h中的形参为指向基类的指针变量p,所以在主函数中执行h(& obj)时,会调用派生类的函数f(),输出D,再调用基类的函数g(),输出B。
转载请注明原文地址:https://www.kaotiyun.com/show/3lNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于下面的程序ifstreamfin(c:\test.txt);if(fin)cout<<"ok";elsecout<<"wrong";对于if语句中的内容可
若有以下程序:#include<iostream>usingnamespacestd;intf(){staticinti=O;ints=1;s+=i;i++
下述关于数据库系统的叙述中正确的是
C++语言中关键字运算符有new,delete和______。
下面对C++运算符的正确的描述是()。
对于重载的运算符>>,它是一个
下列关于运算符重载不正确的是
下列运算符中,()运算符不能在C++中重载。
从实现的角度划分,c++所支持的两种多态性分别是【】时的多态性和运行时的多态性。
多态性指的是
随机试题
RNA中所含的碱基通常有
精囊炎和雄性激素分泌不足时,可导致
A.轻型伤寒B.普通型伤寒C.迁延型伤寒D.逍遥型伤寒E.顿挫型伤寒
某工程项目施工合同于2014年12月签订,约定的合同工期为20个月,2015年1月开始正式施工。施工单位按合同工期要求编制了混凝土结构工程施工进度时标网络计划(见下图),并经专业监理工程师审核批准。该项目的各项工作均按最早开始时间安排,且各工作每月所完
案例十四:孟某拥有两处房产。2008年12月,孟某将2007年6月以72万元价格购买的一处房产出售,获得房款80万元;孟某又将另一处房产出租,收取了当月租金2500元。根据案例十四,回答下列题目:盂某销售房产收入应纳营业税为( )元。
用公式表示试算平衡关系,正确的有()。
教师李某让班里调皮的学生缴纳违纪金,以加强班级管理,该教师的做法()
定义A*B=(A+B)÷5,10*(8*6)的值为:
下图中的立体图形①是由立体图形②、③和④组合而成,下列哪一项能够填入问号处?
Goodnewsforchocoholics:thetreatpreferredbymillionsallovertheworldisgoodforyou,accordingtoAmericanresearchers
最新回复
(
0
)