有如下程序: #inc1ude <iostream> using namespace std; c1ass Book{ public: Book(char*t=""){ strcpy(title,t);} _

admin2019-05-06  37

问题 有如下程序:
    #inc1ude <iostream>
    using namespace std;
    c1ass Book{
    public:
    Book(char*t=""){ strcpy(title,t);}
    _____________
    private:
    char title[40];
    };
    c1ass Novel: public Book{
    public:
    Novel(char*t=""):Book(t){}
    char*Category()const{ refflm"文学";}
    };
    int main(){
    Book *pb;
    pb=new Novel();
    cout<<pb—>Category();
  return0;
  }
  若程序运行时输出结果是“文学”,则划线处缺失的语句是(    )。

选项 A、char*Category0;
B、char* Category()const;
C、virtual char* Category()const;
D、virtualchar* Category()const();

答案D

解析 根据程序运行的结果为:文学,说明程序执行了派生类Novel中的成员函数*Category()Oconst {return"文学";},所以在基类Book中要把函数*Category()const定义为纯虚函数。
转载请注明原文地址:https://kaotiyun.com/show/4KAp777K
0

最新回复(0)