C++友元
友元是C++提供的一种破坏数据隐蔽和封装的机制 1.友元函数 友元函数是在类中使用关键字friend修饰的非成员函数 1.1友元普通函数 定义与概念 友元函数是一个普通的函数 友元普通函数在实现时,不需要类名的限定;在调用时,也不需要由实例来调用 示例代码 #include <iostream> #include <cmath> using namespace std; class Point{ public: Point(int x = 0,int y = 0):x(x),y(y){} int getX(){ return x;}//内联函数 int getY(){ return y;} void showData(); friend float dist(Point &p1,Point &p2);//声明友元函数 private: int x,y; }; //普通成员函数的实现,需要类名限定 void Point::showData(){ cout << "x: " << x << ", y: " << y << endl; } //因为友元函数是非成员函数,所以不需要类名限制 float dist(Point &p1,Point &p2){ double x = p1.x - p2.x; double y = p1.y - p2.y; return static_cast