房天下 > 房天下问答 > 业主生活 > 其他
  • C++错误修改

    #include "stdafx.h"#include<iostream>using namespace std;class X1{protected: int x;public: X1(int xx){x=xx;} void output() { cout<<"x="<<x; }};class Y1:private X1{ int y;public: Y1(int xx=0,int yy=0):X1(xx) {y=yy;} virtual void output() { cout<<"x="<<x<<",y="<<y<<endl; }};class Z1:protected X1{ int z;public: Z1(int xx=0,int zz=0):X1(xx) {z=zz;} virtual void output() { cout<<"x="<<x<<",z="<<z<<endl; }};void main(){ X1 a(2); Y1 b(3,4); Z1 c(5,6); X1* p[3]={&a,&b,&c}; for(int i=0;i<3;i++) { p[i]->output(); }}

    提问者:swatert

    发布于2010-12-17

共1个回答
  • jqxa1999 丨Lv 3
    #include<iostream.h>class X1{protected: int x;public: X1(int xx){x=xx;} virtual void output()//这里也要标注virtual { cout<<"x="<<x; }};class Y1:public X1//应该用public继承{ int y;public: Y1(int xx=0,int yy=0):X1(xx) {y=yy;} virtual void output() { cout<<"x="<<x<<",y="<<y<<endl; }};class Z1:public X1{ int z;public: Z1(int xx=0,int zz=0):X1(xx) {z=zz;} virtual void output() { cout<<"x="<<x<<",z="<<z<<endl; }};void main(){ X1 a(2); Y1 b(3,4); Z1 c(5,6); X1* p[3]={&a,&b,&c}; for(int i=0;i<3;i++) { p[i]->output(); }}
    +1 2010-12-17 举报
热门人气推荐
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。