class Point
{
public:
Point(float xx,float yy)
{
x=xx;
y=yy;
}
friend double Distance(Point &a,Point &b); //友元函数的声明
private:
float x,y;
};
//友元函数定义
double Distance(Point &a,Point &b)
{
float length;
length=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); //它可以引用类中的私有成员
return length;
}
int main(void)
{
Point p1(3.0,4.0),p2(6.0,8.0);
float d = Distance(p1,p2); //友元函数的调用方法,同普通函数的调用一样,不要像成员函数那样调用
return 0;
}