标题:还是关于继承的一个小程序 帮我改改吧~ 谢谢了~
只看楼主
bester214
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-10-21
结帖率:75%
已结贴  问题点数:20 回复次数:5 
还是关于继承的一个小程序 帮我改改吧~ 谢谢了~
#include <iostream>
#include<string.h>

using namespace std;

class circle

{
public:
     circle(int r)
     {
     ra=r;
     }
 //void display() {cout<<半径<<r<<endl;}

};
class table
{
public:
    table(int h,string col)
{
    height=h;
    colour=col;

}
// void diaplay()  { cout<<高度<<h<<颜色<<col<<endl;}
protected:
    int h;
    string col;

};

class circletable:public table,public circle
{
public:
    float s;
    circletable(int r,int h,string col,float s):table(h,col),circle(r){}
    s=3.14*r*r;
    void display()
    {
        cout<<"半径"<<r<<"高度"<<h<<"颜色"<<col<<"面积" <<s<<endl;
    }
};
void  main()
{
    float s;
    //circle c(10);
    //c.displsy();
    //table t(12,"黑色");
    //t.display();
    circletable ct(12,15,"黑色",s);
    ct.display();
   
}


调试有错 怎么改呢? 谢谢了~
题目是一个圆类circle 一个桌子类table 还有一个派生出的circletable类,圆类里面是半径,桌子类是高度和颜色 圆桌类有自己的另外一个面积私有成员 输出高度 面积 颜色 半径

[ 本帖最后由 bester214 于 2009-11-14 12:11 编辑 ]
搜索更多相关主题的帖子: 继承 改改 
2009-11-14 12:06
qlc00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:157
专家分:540
注 册:2007-11-26
得分:1 
#include <iostream.h>
#include<string.h>

class circle

{
public:
     circle(int r)
     {
     ra=r;
     }
void display() {cout<<"半径:"<<ra<<endl;}
protected:
    int ra;

};
class table
{
public:
    table(int h,char* col)
{
    height=h;
    colour=new char[strlen(col)+1];
    strcpy(colour,col);

}
void display()  { cout<<"高度:"<<height<<"颜色:"<<colour<<endl;}
protected:
    int height;
    char* colour;

};

class circletable:public table,public circle
{
public:
   
    circletable(int r,int h,char* col,float s):table(h,col),circle(r){}
   
    const float getarea()
    {
        s=3.14*ra*ra;
        return s;

    }
    void display()
    {
        circle::display();
        table::display();
        cout<<"面积:" <<getarea()<<endl;
    }
private:
    float s;
};
void  main()
{
    float s;
    circletable ct(12,15,"&ordm;&Uacute;&Eacute;&laquo;",s);
    ct.display();
   
}

Anything is possible!
2009-11-14 13:50
一旋无风
Rank: 2
等 级:论坛游民
帖 子:55
专家分:92
注 册:2009-11-11
得分:19 
#include <iostream>
#include<string>
using namespace std;
class circle
{
public:
     circle(float r)
     {R=r;
     }
void display()
{cout<<"**********information of circle **********"<<endl;
cout<<"半径 "<<R<<endl;}
protected:
    float R;
};
class table
{
public:
    table(int h,string col)
    {
    height=h;
    colour=col;
    }
void display()
 { cout<<"**********information of table **********"<<endl;
    cout<<"高度: "<<height<<"颜色: "<<colour<<endl;}
protected:
    int height;
    string colour;
};
class circletable:public table,public circle
{
public:
    circletable(float r,int h,string col):circle(r),table(h,col){S=get_S();}
    double get_S(){S=3.14*R*R;return S;}
    void display()
    {cout<<"**********information of circletable **********"<<endl;
        cout<<"半径"<<R<<"高度: "<<height<<"颜色: "<<colour<<"面积: " <<S<<endl;
    }
protected:
   double S;
};
void  main()
{
    circle c(10);
    c.display();
    table t(12,"黑色");
    t.display();
    circletable ct(12,15,"黑色");
    ct.display();
 }
看仔细点吧,你的好多基本语法错误,多看看书吧
2009-11-14 14:02
一旋无风
Rank: 2
等 级:论坛游民
帖 子:55
专家分:92
注 册:2009-11-11
得分:0 
行就结贴吧,呵呵
2009-11-14 14:05
bester214
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-10-21
得分:0 
回复 3楼 一旋无风
谢谢! 我会努力的!
希望以后多教我哈:)
2009-11-14 15:51
无声的小草
Rank: 1
等 级:新手上路
帖 子:22
专家分:5
注 册:2009-10-10
得分:0 

谢谢! 我会努力的!
希望以后多教我哈:)
2009-11-15 11:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-292269-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.467681 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved