/*
2.
3. *Copyright (c) 2016,烟台大学计算机学院
4.
5. *All rights reserved.
6.
7. *文件名称:test.cpp
8.
9. *作者: 武聪
10.
11. *完成日期:2016年5月12日
12.
13. *版本号:v1.0
14.
15. *
16.
17. *问题描述:求点类中的距离
18. *输入描述: 两点坐标
19. *程序输出:距离
20. */
#include <iostream>
#include<Cmath>
using namespace std;
class point
{
private:
double x;
double y;
public:
point(double xx=0,double yy=0):x(xx),y(yy){};
friend double distance1(point &,point &);//友元
double distance2(point &);//成员
double getx()
{
return x;
}
double gety()
{
return y;
}
};
double distance3(point &,point &);//一般
double distance1(point &p1,point &p2)
{
double dx=p1.x-p2.x;
double dy=p1.y-p2.y;
return sqrt(dx*dx+dy*dy);
}
double point:: distance2(point &p)
{
double dx=x-p.x;
double dy=y-p.y;
return sqrt(dx*dx+dy*dy);
}
double distance3(point &p1,point &p2)
{
double dx=p1.getx()-p2.getx();
double dy=p1.gety()-p2.gety();
return sqrt(dx*dx+dy*dy);
}
int main()
{
point p1(10,13), p2(-5,6);
cout<<"1. "<<p1.distance2(p2)<<endl;
cout<<"2. "<<distance1(p1,p2)<<endl;
cout<<"3. "<<distance3(p1,p2)<<endl;
return 0;
}
运行结果:
知识点总结:
三种函数的区别
学习心得:
继续努力