看看这C++

来源:百度知道 编辑:UC知道 时间:2024/05/13 08:28:11
根据main函数中使用,设计类Point和Cycle
Int main(){
Point p1,p2;
Cycle c1,c2;
p1.init(3,6); p2.init(4,8); //点初始化
c1.init( p1, 5); // 圆初始化方式1:点和半径
c2.init(3,4,5); // 圆初始化方式2:x坐标,y坐标 和半径
float s=p2-p1; //点相减,得到的是两点间的距离
float t= c1-c2; //圆相减,得到两个圆的面积差
cout<<c1; //圆输出形式为 3,6:5 即xy坐标和半径

class POINT{
public
void init(int x,int y) //初始点
{
p_x=x;
p_y=y;
}

int getX(){
return p_x;
}

int getY(){
return p_y;

}

private
int p_x;
int p_y;
}

class Cycle{
private
POINT1 p;
int c_x,c_y,c_r;

public
void init(POINT p,int c_r1){ //初始化形式1
c_x=p.getX();
c_y=p.getY();
c_r=c_r1;
}

void init(int c_x1,int c_y1,int c_r1){ //初始化形式二
c_x= c_x1;
c_y=c_y1;
c_r=c_r1;
}

}

重载部分“ float s=p2-p1; //点相减,得到的是两点间的距离
float t= c1-c2; //圆相减,得到两个圆的面积差
cout<<c1; ”
没做

原来就是操作符重载的问题嘛!给个思路,学习的话思路最重要了,具体实现自己用C++的语法套一下,里面没什么大学问的,全都学别人的代码,这种学习方法不太好!
自己设计个子类subPoint,subCycle,分别继承Point, Cycle.然后在函数实现部分什么都不需要做,除了3点.
1)用operator重载"-"号和"<<"号,函数体自己算下,可以随心所欲的.但返回类型的