首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D
admin
2012-01-20
25
问题
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D:public B{ public: void show( ){cout<<"D";} }; void funl(B*ptr){ptr->show( );} void fun2(B&ref);ref.show( );} void fun3(B b){b.show( );} int nlain( ){ B b,*P=Dew D; D d; funl(p); fun2(b); fun3(d); return 0; } 程序的输出结果是
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
基类指针可以指向派生类对象,在对象作为参数传递时,是通过“传值调用”传递给函数的,是单向传递。使用对象指针对函数参数进行传递时,是通过“传址调用”传递给函数的,即函数的形参对象和实参对象指针变量指向同一内存地址;使用对象引用作为函数参数时,也是通过“传址调用”传递给函数的。funl(p)传递的是类D对象的地址,所以调用类D的是show( ),fun2(b)调用的和传递的都是类B的对象引用,所以调用类B的show( )。调用’fun3(d)时,由于void fun3(B b)传递的虽然是D类对象,但是形参是B类对象,所以调用基类B的show( )。
转载请注明原文地址:https://kaotiyun.com/show/gPVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有以下程序#include<stdio.h>inta=2;intf(intm){staticintn;n=0;n++;a++;retur
有以下程序:#incdude<stdio.h>structS{intn;inta[20];{;wildf(structS*p){inti,j,t;for{i=0;i<p->n-1;i++)for(j=i+1;j<p->n;j++)
以下叙述中正确的是()。
关于C语言中循环语句的叙述中正确的是()。
以下针对全局变量的叙述中错误的是()。
下列给定程序中,函数fun的功能是:依次取出字符串中所有的数字字符,形成新的字符串,并取代原字符串。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#in
设Y为整型变量,A=1,A的地址为EF01;B=2,B的地址为EF02;执行语句B=&A;Y=&b;后Y的值()。
C语言中规定,程序中各函数之间()。
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。
将一个函数声明为一个类的友元函数必须使用关键字【 】。
随机试题
A、Tosatisfyhisrequirements.B、Toshowhowthesoftwareworks.C、Toaskhimtobuyotherproducts.D、Tolethimcompareprices
导致公司清算的直接原因是()
帮助肺炎患儿拍背的方法正确的是
A.多发于育龄妇女,疼痛与月经有关B.多发于20岁左右的青年女性C.40~60岁妇女多见D.哺乳期多发E.多见于乳房丰满的年轻女性,外伤后可先出现瘀斑,后出现结节乳腺癌
下列关于宫颈癌的叙述,错误的是()
如图所示,杆受集度为P的均布荷载作用,则杆的变形为()。
对敏感性分析结果进行分析时,应重点关注()等问题。
保冷结构由内至外,按功能和层次由()组成。
企业在生产中为生产工人发放安全头盔所产生的费用,应计入()。
祖父年龄70岁,长孙20岁,次孙13岁,幼孙7岁。多少年后,三个孙子的年龄之和与祖父的年龄相等?
最新回复
(
0
)