C++의 친구 함수는 다른 클래스의 비공개/보호 멤버에 액세스할 수 있는 특수 함수입니다. friend 키워드는 다음과 같이 친구 함수를 선언할 때 사용해야 합니다. 친구 함수 선언: friend void printValue(const MyClass& obj) 친구 함수 사용: 친구 함수는 일반 함수처럼 사용할 수 있으며 private/에 액세스할 수 있습니다. 실제 사례: 로깅 시스템 또는 테스트 프레임워크에서 friend 함수는 클래스 비공개 데이터에 액세스하고 특정 기능을 구현할 수 있습니다. 참고: Friend 함수는 주의해서 사용해야 하며 완전한 서명을 지정해야 하며 보호된 멤버는 다음을 제외하고는 직접 액세스할 수 없습니다. 해당 회원도 친구로 선언했습니다.
C++에서 친구 함수 선언 및 사용
친구 함수는 다른 클래스의 비공개 및 보호 멤버에 액세스할 수 있는 특별한 전역 함수 또는 메서드입니다. 이는 클래스 외부에서 내부 데이터나 작업에 액세스해야 하는 상황에 유용합니다.
Friend 함수 선언
friend 함수를 선언하려면 다음과 같이 friend
키워드를 사용하세요. friend
关键字,如下所示:
class MyClass { private: int value; public: friend void printValue(const MyClass& obj); }; // 友元函数声明 void printValue(const MyClass& obj);
上述声明使 printValue
函数成为 MyClass
的友元函数。
使用友元函数
一旦声明了友元函数,就可以像使用其他全局函数一样使用它。友元函数具有访问类私有和受保护成员的特权。例如,在以下代码中,printValue
函数可以打印 MyClass
的私有成员 value
:
#include <iostream> using namespace std; class MyClass { private: int value; public: friend void printValue(const MyClass& obj); }; void printValue(const MyClass& obj) { cout << "Value: " << obj.value << endl; } int main() { MyClass obj; obj.value = 10; printValue(obj); return 0; }
输出:
Value: 10
实战案例
以下是一个利用友元函数的现实生活中的案例:
注意事项
friend
rrreeeprintValue
함수 Friend 함수가 내 클래스. printValue
함수는 MyClass
의 전용 멤버 value
를 인쇄할 수 있습니다. 🎜rrreee🎜출력: 🎜rrreee🎜🎜 실제 사례🎜 🎜🎜다음은 친구 기능을 활용한 실제 사례입니다. 🎜friend
로 선언되지 않는 한 클래스의 보호된 멤버에 직접 액세스할 수 없습니다. 🎜🎜위 내용은 C++에서 친구 함수를 선언하고 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!