C++ 프렌드 메커니즘을 사용하면 비멤버 함수나 클래스가 다른 클래스의 프라이빗 또는 보호된 멤버에 액세스하여 다음 목적을 달성할 수 있습니다. 비멤버 함수가 프라이빗 멤버에 액세스하도록 허용합니다. 멤버 함수가 다른 클래스의 프라이빗 멤버에 액세스하도록 허용합니다. 클래스 멤버 함수 허용 다른 클래스의 프라이빗 멤버에 액세스하려면 프라이빗 멤버
C++ 함수의 친구 메커니즘에 대한 자세한 설명
친구 메커니즘은 함수나 클래스가 다른 클래스의 프라이빗 또는 보호된 멤버에 액세스할 수 있도록 허용하는 기능입니다. 기능. C++에서 친구 메커니즘은 다음 목적을 달성할 수 있습니다.
Syntax
전역 함수 친구 선언:
friend 返回值类型 函数名(参数列表);
클래스 친구 선언:
friend class 类名;
클래스 멤버 함수 친구 선언:
friend 返回值类型 类名::成员函数名(参数列表);
실제 사례:
질문: 디자인 one Point
类,它有私有成员 x
和 y
,并且有一个打印所有私有成员的 print()
函数。现在,我们想要一个额外的 printInfo()
函数,它可以访问 Point
클래스의 개인 멤버를 찾아서 인쇄하세요.
구현:
// Point 类 class Point { private: int x; int y; public: // 友元函数,可以访问 Point 类的私有成员 friend void printInfo(Point& point); // Point 类的成员函数 void print() { std::cout << "x: " << x << ", y: " << y << std::endl; } }; // 全局友元函数,可以访问 Point 类的私有成员 void printInfo(Point& point) { std::cout << "x: " << point.x << ", y: " << point.y << std::endl; } int main() { Point point{10, 20}; point.print(); // 输出:x: 10, y: 20 printInfo(point); // 输出:x: 10, y: 20 return 0; }
위 내용은 C++ 함수의 프렌드 메커니즘에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!