在下面程序中,A、B、C、D四句编译时不会出错的是( )。 #include <iostream> using namespace std; class Base{ public: Base();

admin2009-01-15  24

问题 在下面程序中,A、B、C、D四句编译时不会出错的是(    )。    #include <iostream>    using namespace std;    class Base{    public:        Base();        Base(int e):count(C) {}        virtual void print() const = 0;    private:        int count;    };    class Derived :public Base{    public:        Derived():Base(0) {}        Derived(int C) :Base(C) {}        void printt() const{cout<< "Derived"<<endl:}    };    void main( ) {        Derived d(10);        Base *pb;        pb = &d;                 //A        Base &cb= d;        Derived dd = *pb;        //B        Derived &cd = cb;        //C        Base bb = d;             //D        

选项 A、A
B、B
C、C
D、D

答案1

解析 B和C不符合赋值兼容规则,D不能建立抽象类的对象。
转载请注明原文地址:https://kaotiyun.com/show/tSkp777K
0

最新回复(0)