可以引用类中的私有成员
class Point
{
...
friend double Distance (Point &a,Point &b);
...
private:
double x,y;
};
double Distance(Point &a, Point &b)
{
double dx = a.x - b.x;
double dy = a.y - b.y;
return sqrt(dx*dx+dy*dy);
}
main()
{
Point p1(3.0,4.0), p2(5.0,6.0);
...
double d=Distance(p1,p2)
...
}