请阅读下述代码,写出程序执行的结果#include <iostream>using namespace std;class CBase{public:virtual void print(){cout<< "base" << endl;}void DoPrint(){print();}};class CChild1: public CBase{public:virtual void print(){cout<< "child1" << endl;}};class CChild2: pu{public:vi

题目

请阅读下述代码,写出程序执行的结果

#include <iostream>

using namespace std;

class CBase

{

public:

virtual void print()

{

cout<< "base" << endl;

}

void DoPrint()

{

print();

}

};

class CChild1: public CBase

{

public:

virtual void print()

{

cout<< "child1" << endl;

}

};

class CChild2: pu

{

public:

virtual void pri

{

cout<< "chil

}

};

void DoPrint(CB

{

base->DoPrint

}

void main()

{

CBase* base =

CChild1* child

CChild2* child

DoPrint(child1

DoPrint(child2

DoPrint(base);

delete base;

base = child1;

base->print();

delete child1;

delete child2;

}


相似考题
更多“请阅读下述代码,写出程序执行的结果#include &lt;iostream&gt; using namespace std; class C ”相关问题
  • 第1题:

    阅读以下程序,写出程序运行后的输出结果是 ______。includevoid main(){char a[]={'

    阅读以下程序,写出程序运行后的输出结果是 ______。 #include<iostream.h> void main(){ char a[]={'H','e','1','1','o','\0'}; int i,j; i=sizeof(a)/sizeof(char); j=strlen(a) cout<<i<<‘ ’<<j;

    A.6 6

    B.5 6

    C.1 5

    D.6 5


    正确答案:D

  • 第2题:

    请写出如下代码执行的结果。 <?php $a = 'hello'; $$a = 'world'; echo $a $hello;


    1

  • 第3题:

    阅读下面的程序,写出程序的运行结果_______ #include<stdio.h> int main() { int i,j; i=010; j=9; printf("%d,%d",i-j,i+j); }


    Person() null---0 林青霞---27

  • 第4题:

    阅读下列说明和C++代码,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。
    【说明】
    以下C++代码实现一个简单绘图工具,绘制不同形状以及不同颜色的图形。部分类及其关系如图6-1所示。



    【C++代码】
    #include?#include?using?namespace?std;class?DrawCircle?{??????//绘制圆形,抽象类? ? ? public: (1);//定义参数为?int?radius,?int?x,?inty? ?virtual~DrawCircle()?{?}};class?RedCircle:public?DrawCircle?{????//绘制红色圆形? ? ? ? public: void?drawCircle(intradius,?int?x,?int?y)?{cout?<?drawCircle?=?drawCircle;? }? ?virtual~shape()?{?}? public:? ?virtual?void?draw()?=?0;};class?Circle:public?Shape?{????//圆形? ? private:? ? ?int?x,y,radius;? ? public:? Circle(int?x,inty,int?radius,DrawCircle?*drawCircle)? (3)? {? this->x?=?x;? ?this->y?=?y;? ? this->radius?=?radius; }? ? ? public:? void?draw(){? drawCircle?-> (4); }};int?main(){Shape?*redCirclenew?Circle(100,100,10,????(5)????);//绘制红色圆形? Shape?*greenCircle=new?Circle(100,100,10, (6)??);//绘制绿色圆形redCircle >draw();? ?greenCircle?->draw();? ?return?0;}


    答案:
    解析:
    (6)(1)void drawCircle (int radius,int x,int y)
    (2)DrawCircle*drawCircle
    (3)drawcircle
    (4)drawCircle(radius,x,y)
    (5)new RedCircle()
    (6)new GreenCircle()【解析】
    第一空是填接口里面的方法,在接口的实现里面找,可以发现应该填void drawCircle (int radius,int x,int y)。
    第二空可以根据后面this drawCircle=drawCircle判断,这里应该有一个drawCircle属性,因此应该填)DrawCircle drawCircle。
    第三空这里填drawcircle,用-> drawcircle来引用父类的成员。
    第四空调用drawCircle(radius,x,y)方法。
    第五、六空分别创建一个红色圆形对象和一个绿色圆形对象作为Circle里面的实参。

  • 第5题:

    请仔细阅读程序,将程序的执行结果详细的写出来。注意字符和标点符号的书写 #include <stdio.h> int main() { int i,j=4; for(i=j;i<=2*j;i++) switch(i/j) { case 0: case 1: printf("*");break; case 2: printf("#"); } return 0; }


    c

  • 第6题:

    请仔细阅读程序,将程序的执行结果详细的写出来。注意字符和标点符号的书写 # include "stdio.h" int main() { int n1,n2=1234; while(n2!=0) {n1=n2%10; n2=n2/10; printf("%d",n1); } return 0; }


    A 本题考查考生阅读Java程序的能力。题目程序看似复杂,但流程非常简单。程序的public类是throwsException,类中定义了Proc(intsel)方法。程序入口是main()方法,使用try-catch-finally来捕获Arithmet-icException和ArrayIndexoutOfBoundsException异常,这两个异常是关于算术异常或数组索引越界的异常。执行Proc(O)时,输出InSituation0和noExceptioncaught两条信息;执行Proe(1)时,输出InSituationl和inProefinally两条信息。整个程序并未发生异常。