..设计一个用来表示直角坐标系的location类,在主程序中创建类location的两个对象A和B,要求A的坐标点在第
答案:1 悬赏:80
解决时间 2021-12-22 13:16
- 提问者网友:相思瘸子
- 2021-12-21 21:40
急需
最佳答案
- 二级知识专家网友:虚伪的现实
- 2021-12-21 22:00
#include "iostream.h"
#include "math.h"
class Location {
private:
int x,y;
public:
Location(int i, int j):x(i),y(j) {}
int Getx( ) {return x;}
int Gety( ) {return y;}
double distance(Location b);
friend double distance(Location &a, Location &b);
};
double distance(Location &a, Location &b) //友元函数
{ int dx=a.x-b.x;
int dy=a.y-b.y;
return sqrt(dx*dx+dy*dy); }
double Location::distance(Location b) //成员函数
{ int dx=x-b.x;
int dy=y-b.y;
return sqrt(dx*dx+dy*dy); }
void main( )
{
Location A(-10,-20),B(-40,60);
cout<<"A("<<A.Getx( )<<","<<A.Gety( )<<"),B("<<B.Getx( )<<","<<B.Gety( )<<")"<<endl;
double d=A.distance(B); //调用成员函数
cout<<"Distance1= "<<d<<endl;
cout<<"Distance2= "<<distance(A,B)<<endl;} //调用友元函数
#include "math.h"
class Location {
private:
int x,y;
public:
Location(int i, int j):x(i),y(j) {}
int Getx( ) {return x;}
int Gety( ) {return y;}
double distance(Location b);
friend double distance(Location &a, Location &b);
};
double distance(Location &a, Location &b) //友元函数
{ int dx=a.x-b.x;
int dy=a.y-b.y;
return sqrt(dx*dx+dy*dy); }
double Location::distance(Location b) //成员函数
{ int dx=x-b.x;
int dy=y-b.y;
return sqrt(dx*dx+dy*dy); }
void main( )
{
Location A(-10,-20),B(-40,60);
cout<<"A("<<A.Getx( )<<","<<A.Gety( )<<"),B("<<B.Getx( )<<","<<B.Gety( )<<")"<<endl;
double d=A.distance(B); //调用成员函数
cout<<"Distance1= "<<d<<endl;
cout<<"Distance2= "<<distance(A,B)<<endl;} //调用友元函数
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |