问题
单项选择题
在下面程序中,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; //ABase &cb= d;Derived dd = *pb;//BDerived &cd = cb;//CBase bb = d; //D
A.a
B.B
C.C
D.D
答案
参考答案:A
解析: B和C不符合赋值兼容规则,D不能建立抽象类的对象。