/*
*Copyright(C) 2016,计算机与控制工程学院
*All rights reserved.
*文件名:test.cpp
*作者:张志新
*完成日期:2016年4月15日
*版本号:v1.0
*
*问题描述:友元函数.成员函数和一般函数。
*/
#include <iostream>
#include<cmath>
using namespace std;
class CPoint
{
private:
double x; // 横坐标
double y; // 纵坐标
public:
double distance2(CPoint &);
friend double distance1(CPoint &,CPoint &);
CPoint(double xx=0,double yy=0):x(xx),y(yy){}
getX()
{
return x;
}
getY()
{
return y;
}
};
void distance3(CPoint &,CPoint &);
double distance1(CPoint &p1,CPoint &p2)
{
double dx=p1.x-p2.x,dy=p1.y-p2.y;
cout<<sqrt(dx*dx+dy*dy)<<endl;
return 0;
}
double CPoint::distance2(CPoint &p)
{
double dx=x-p.x,dy=y-p.y;
cout<<sqrt(dx*dx+dy*dy)<<endl;
}
void distance3(CPoint &p1,CPoint &p2)
{
double dx=p1.getX()-p2.getX(),dy=p1.getY()-p2.getY();
cout<<sqrt(dx*dx+dy*dy)<<endl;
}
int main()
{
CPoint p1(1,1),p2(0,0);
cout<<"友元:";
distance1(p1,p2);
cout<<"成员函数:";
p1.distance2(p2);
cout<<"一般函数:";
distance3(p1,p2);
return 0;
}/*
*Copyright(C) 2016,计算机与控制工程学院
*All rights