Peraturan untuk pengisytiharan fungsi rakan adalah seperti berikut: pengisytiharan mestilah di luar kelas. Boleh diisytiharkan sebagai fungsi ahli atau fungsi global. Objek kelas boleh dihantar melalui penunjuk atau rujukan.
C++ Friend Function Declaration Rules
Friend Function Declaration
Fungsi rakan ialah fungsi khas yang boleh mengakses ahli peribadi kelas. Untuk mengisytiharkan fungsi rakan dalam C++, gunakan kata kunci rakan
seperti berikut: friend
关键字,如下所示:
// 声明 MyClass 类的友元函数 printInfo() friend void printInfo(const MyClass& obj);
声明规则
以下是在 C++ 中声明友元函数的规则:
实战案例
考虑以下 MyClass
类,它有私有成员变量 _data
:
class MyClass { private: int _data; public: // ... };
我们可以定义一个友元函数 printInfo()
来访问 _data
:
// 声明 printInfo() 为 MyClass 的友元函数 friend void printInfo(const MyClass& obj) { std::cout << "Data: " << obj._data << std::endl; }
在主函数中,我们可以实例化 MyClass
int main() { MyClass obj; obj._data = 42; // 访问私有成员(仅在友元函数中允许) printInfo(obj); // 调用友元函数 return 0; }
Peraturan Pengisytiharan
Berikut ialah peraturan untuk mengisytiharkan fungsi rakan dalam C++:🎜MyClass
berikut, yang mempunyai pembolehubah ahli persendirian _data
: 🎜Data: 42
printInfo()
untuk mengakses _data
: 🎜rrreee🎜Dalam fungsi utama, kita boleh membuat instantiate objek MyClass
dan memanggil fungsi rakan ke cetak data peribadi: 🎜rrreee🎜🎜Output: 🎜🎜rrreeeAtas ialah kandungan terperinci Apakah peraturan pengisytiharan untuk fungsi rakan C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!