万能百科  > 所属分类  > 

有如下程序:#include<iostream>using namespace std;class Publication{//出版物类char n

有如下程序:

#include<iostream>

using namespace std;

class Publication{//出版物类

char name[30];

public:

Publication(char*name=”未知名称”){

strcpy(this->name,name);

}

const char*getName()const{return name;}

virtual const char*getType()const{return“未知类型”;}

};

class Book:public Publication{//书类

public:

Book(char*name):Publication(name){}

virtual const char*getType()const{return“书”;}

}.

void showPublication(Publication&p){

cout<<P.getType()<<“:”<<P.getName()<<endl;

}

int main(){

Book book(”精彩人生”);

showPublication(book);

return 0;

}

运行时的输出结果是

A.未知类型:未知名称

B.未知类型:精彩人生

C.书:未知名称

D.书:精彩人生

正确答案:

D解析:因为getType是虚函数,所以p.getType( )执行继承类的getType函数,输出“书”;p.getName( )执行基类的getName-函数,输出“精彩人生”。总共输出“书:精彩人生”,故选D)。

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。

标签