首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void f(){cout<<’’B’’;} void g(){
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void f(){cout<<’’B’’;} void g(){
admin
2017-11-28
22
问题
有如下程序:
#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://jikaoti.com/ti/Sat0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于栈的叙述中正确的是
下列虚基类的声明中正确的是
以下叙述中不正确的是
数据的逻辑结构是从逻辑关系上描述数据,它与数据的【 】结构无关。
下列有关析构函数的叙述,错误的是( )。
下列关于this指针的叙述中,正确的是
为了在两个关系中提取所有相同的元组,则在交与并这两种关系运算中,应使用【 】运算。
关于在调用模板函数时模板实参的使用,下列表述正确的是()。
以下选项中合法的用户标识符是
在C++中用来实现运行时多态性的是
随机试题
我国的()是人民代表大会制度的基础。
下列情况应先补后攻的是
下列导致支气管哮喘气流受限的原因不包括
患者,女,25岁。连续3个月经周期提前约10天,月经量多,色红质稠,手足心热,舌红,少苔,脉细数,针灸处方主穴为
用地高辛治疗后,病人出现食欲明显减退、恶心、呕吐、视力模糊,心率为50次/分,律不齐。应考虑病人出现了哪种情况
下列关于施工合同的变更不正确的是( )。
梁桥轻型墩中,()施工简便、外形美观、过水性良好,适用于地基土软弱的地区。
社会、人口与文化环境包括()。
设b>a>0,f(x)在[a,b]上连续,单调递增,且f(x)>0,证明:存在ξ∈(a,b)使得a2f(b)+b2f(a)=2ξ2f(ξ).
Tomlaughedwhenhe(realization)______whathadhappened.
最新回复
(
0
)