已经写好了一部分,还有一部分成员函数和空缺需要填满但是不太确定。
(那些成员函数已经写出来了,希望老师能教教我怎么弄完
球类计算程序
【要求】按以下描述和要求建立基类Circle和派生类Ball:
#include <iostream.h>
#define PI 3.14159
class Circle{ //圆类
protected:
float ; //圆的半径
float ; //圆的周长
public:
Circle(){radi=0; len=0;}; //缺省构造函数
Circle(float x){radi=x;len=2PIradi;} //带参构造函数
Circle(Circle &c){ } //拷贝构造函数
void set(float x){radi=x;len=2PIradi;} //用x值修改半径及长度
void disp(){cout<<"圆半径="<<radi<<" 周长="<<len<<endl;}
};
class Ball:public Circle{ //球类
private:
float weight[4]; //最多可存储4个球
int num; //weight中的球个数
float total; //num个球的总重量
public:
Ball():Circle(){num=0;total=0;for(int i=0;i<4;i++) weight[i]=0;}
Ball(Circle &t, float w,int n):Circle(t){ //带参构造函数
num=n;total=0;
for(int i=0;i<n;i++) { }
}
void add(float w); //在表num处插入个新球,重量为w
void operator +=(Ball &a); //将球对象a的半径和this的前num个重量值分别累加到this的半径和重量上
void display(); //屏幕输出,如果球个数为0则提示相应信息并结束
};
请完成以上未定义函数体的成员函数和有空缺的部分。测试用主函数参考如下:
void main(){
Circle A,B(2.5);
A.disp();B.disp();
A.set(4);
Ball P(A,10,2),Q;
cout<<"球的信息:"<<endl;
P.display();
Q.set(5);
Q.add(35);