首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout(show();} void fun2(B &ref
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout(show();} void fun2(B &ref
admin
2020-12-21
40
问题
有如下程序:
#include
using namespace std;
class B{
public:
virtual void show(){cout(<“B”;}
};
class D:pubhc B{
public:
void show(){cout<<“D”;}
};
void funl(B*ptr){ptr->show();}
void fun2(B &ref){ref.show();}
voidfun3(B b){b.show();}
int main()
{
B b,*P=new D;
D d;
fun1(p);
fun2(b);
fun3(d);
delete P;
return 0;
执行这个程序的输出结果是( )。
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,本题中定义类B的对象b、对象指针*p=new D以及类D的对象d;执行fun1会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/cOyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义classMyClasspublic:Private:intdata;};若要为MyClass类重载流输入运算符>>,使得程序中可以“cin>>obj;”形式输入MyClass类的对象obj,
有类定义如下:classType{public:Type(inti=0);Typeoperator-(int);friendTypeoperator+(Type,Type);privat
有如下程序:#include<iostream>usingnamespacestd;classXA{inta;public:staticintb;XA(intaA):a(aA){
有如下程序:#include<iostream>usingnamespacestd;classBase{public:virtualvoidfunction1(){cout<<’0’;}voidf
有如下类定义: Class MyClass{ int value; public: MyClass(int n): value(n){} int getValue()const{return value;}
下列关于C++预定义流对象的叙述中,正确的是
已知主函数中通过如下语句序列实现对函数模板swap的调用:inta[10],b[10];swap(a,b,10);下列对函数模板swap的声明中,会导致上述语句序列发生编译错误的是()。A)template<ty
下列关于模板形参的描述中,错误的是
以下程序中调用cin函数给变量a输入数值的方法是错误的,其错误原因是 #include voidmain() {int*p,*q,a,b; p=&a; cout<<"inputa:"; cin>>p; }
随机试题
A、麻醉药品B、精神药品C、处方药D、非处方药E、兴奋剂连续使用后易产生躯体依赖性,能成瘾药品是
会计凭证按其填制程序和用途不同,可分为()。
对于擅自开办资产管理业务的证券公司,中国证监会将责令改正,并处以警告,罚款。()
当需要证实组织有能力稳定地提供满足顾客和适用的法律法规要求的产品时,组织不能采用_________。
设f(x)在x=0的某个邻域内存在二阶导数,且=1,则f’’(0)的值为()。
解不等式组:.
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
设二重积分I=(x2+y2)dxdy,其中D是由曲线x2+y2=2x所围第一象限的平面区域,则I=________。
设栈的存储空间为S(1:50),初始状态为top=-1。现经过一系列正常的入栈与退栈操作后,top=30,则栈中的元素个数为()
A、正确B、错误B
最新回复
(
0
)