题目内容

有如下程序:#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);delete p;return 0;}执行这个程序的输出结果是()。

A. BBB
BBD
C. DBB
DBD

查看答案
更多问题

有如下程序:#include using 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;}执行这个程序的输出结果是()。

A. B1B2
B. A1A2
C. B1A2
D. A1B2

有如下程序:#include using namespace std;class Base{public:void fun1() { cout<<"Base\n"; }virtual void fun2() { cout<<"Base\n"; }};class Derived : public Base {public:void fun1() { cout<<"Derived\n"; }void fun2() { cout<<"Derived\n"; }};void f(Base& b) { b.fun1(); b.fun2(); }int main(){Derived obj;f(obj);return 0;}执行这个程序的输出结果是()。

A. Base Base
Base Derived
C. Derived Base
Derived Derived

有如下程序:#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. 1B
B. 1D
C. 2B
D. 2D

在一个有向图中,所有顶点的入度和等于所有结点的出度之和的()倍。

A. 1/2
B. 1
C. 2
D. 3

答案查题题库