有如下程序: #include using namespace std; class Power{ public: Power(int x):val(x){} protected: int val;

admin2021-09-05  18

问题 有如下程序:
    #include
    using namespace std;
    class Power{
    public:
    Power(int x):val(x){}
    protected:
    int val;
    };
    class Square:public Power{
    public:
    Square(int x):Power(x){}
    void Display(){cout<    };
    int main(){
    Power*p=new Square(3);
    p->Display();
    delete p;
    return 0;
    }
    若运行时的输出结果为“3的平方是9”,则划线处缺失的语句可能是(    )。

选项 A、void Display()l}
B、virtual void Display()=0
C、void virtual Display()=O;
D、void Display()virtual{}

答案B

解析 由题意可知,基类指针p指向的是派生类的对象,当p调用Display()时,输出的结果是派生类中的Display(),可知Display()必为虚函数,这样才能满足动态联编。虚函数的定义是在声明前加关键字virtual,选项A不是虚函数,错误;选项C、D定义虚函数的格式不对,错误;答案为B选项。
转载请注明原文地址:https://jikaoti.com/ti/EXc0FFFM
0

最新回复(0)