题目内容

有如下程序:#includeusing namespace std;class Base{int a,b;public:Bace(int x ,int y) { a=x; b=y;}void show(){ cout<show();return 0;}运行时输出的结果是()。

A. 10,20
B. 20,30
C. 30,40
D. 50,50

查看答案
更多问题

有如下程序:#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. BDD
BBD
C. DBB
DBD

有如下程序:#includeusing namespace std;class A{public:virtual void func1(){cout<<"A1";}void func2(){cout<<"A2";}};class B:public A{public:void func1(){cout<<"B1";}void func2(){cout<<"B2";}};int main(){A*p=new B;p->func1();p->func2();delete p;return 0;}运行时的输出结果是()。

A1B2
B1A2
C. B1B2
D. A1A2

有如下程序:#include using namespace std;class Book {public:Book(char*t=" "){ strcpy(title,t);}_______________private:char title[40];};class Novel: public Book {public:Novel(char* t=" "): Book(t){ }char* Category()const { return "文学";}};int main(){Book *pb;pb=new Novel();cout<Category();delete pb;return 0;}若程序运行时输出结果是”文学”,则横线处缺失部分是()。

A. char* Category()const;
B. virtual char *Category()const=0;
C. char* Category();
D. virual char* Category()const;

下列关于运算符重载的叙述中,正确的是()。

A. 运算符重载是多态性的一种表现
B. C++中可以通过运算符重载创造新的运算符
C++中所有运算符都可以作为非成员函数重载
D. 重载运算符时可以改变其结合性

答案查题题库