#include
using namespace std;
#include
class point{
private:
int x,y;
friend int dist1(point p1,point p2);
public:
point(int a=10,int b=10){ x=a; y=b; }
int getx( ){ return x; }
int gety( ){ return y; }
};
int dist1(point p1,point p2){
double x=(p2.x-p1.x);
double y=(p2.y-p1.y);
return sqrt(x*x+y*y);
}
int dist2(point p1,point p2){
double x=p2.getx()-p1.getx();
double y=p2.gety()-p1.gety();
return sqrt(x*x+y*y);
}
void main()
{
point p1(2,5),p2(4,20);
cout<<dist1(p1,p2)<<endl;
cout<<dist2(p1,p2)<<endl;
}
为什么dist2这个函数没有声明为友元函数,却也能正常运行?