如果表达式a>=b中的">="是作为非成员函数重载的运算符,则可以等效地表示为( )。
A. operator>=(a,b)
B. a.operator>=(b)
C. b.operator>=(a)
D. operator>=(b,a)
查看答案
有如下程序:#includeusing namespace std;class GA{public: virtual int f(){return 1;}};class GB:public GA{public: virtual int f(){return 2;}};void show(GA g){cout<
A. 1111
B. 1212
C. 1112
D. 1211
下列有关抽象类和纯虚函数的叙述中,错误的是( )。
A. 纯虚函数都的声明可以不用"=0;"结束
B. 拥有纯虚函数的类是抽象类,不能用来定义对象
C. 抽象类的派生类若不实现纯虚函数,它也是抽象类
D. 纯虚函数的声明以"=0;"结束
有以下程序:#include using namespace std;class B{public:virtual void show(){cout<<"B";}} ;class D: public B{public:void show() {cout<<"D";}};void fun1(B *ptr) { ptr->show(); }void fun2(B &ref) { ref.show();}void fun3(B b ) { b.show();}int main(){B b,*p=new D;D d;fun1(p);fun2(b);fun3(d);return 0;}程序运行的输出结果是( )。
A. DBBD
BBB
C. DBB
DBD
有如下程序:#include using namespace std;class Base{public: void output() { cout<<1;} virtual void Print(){cout<<'B';}};class Derived : public Base{public: void output() {cout<<2;} void Print() { cout<<'D';}};int main(){ Base *ptr=new Derived; ptr->output(); ptr->Print(); delete ptr; return 0;}程序的输出结果是( )。
A. 2D
B. 1B
C. 1D
D. 2B