Fungsi rakan ialah fungsi bukan ahli yang mempunyai kebenaran untuk mengakses ahli persendirian kelas Skop kebenaran adalah terhad kepada kelas yang diisytiharkan menggunakan kata kunci rakan. Seperti dalam contoh, fungsi addMoney diisytiharkan sebagai rakan kelas BankAccount dan boleh mengakses dan beroperasi pada baki ahli persendirian.
Skop kebenaran fungsi rakan C++
Apakah fungsi rakan?
Fungsi rakan ialah fungsi khas bukan ahli yang boleh mengakses ahli kelas (peribadi atau dilindungi) yang biasanya hanya boleh diakses oleh ahli kelas. Sama seperti fungsi ahli, fungsi rakan mempunyai keupayaan untuk mengakses perwakilan dalaman kelas.
Skop kebenaran
Skop kebenaran fungsi rakan terhad kepada kelas di mana ia diisytiharkan sebagai fungsi rakan. Fungsi rakan tidak boleh mengakses ahli peribadi atau dilindungi kelas lain.
Mengisytiharkan fungsi rakan
Untuk mengisytiharkan fungsi sebagai fungsi rakan, anda boleh menggunakan kata kunci rakan
, seperti yang ditunjukkan di bawah: friend
关键字,如下所示:
class MyClass { private: int privateMember; public: // 声明一个友元函数 friend void myFriendFunction(MyClass& obj); };
实战案例
考虑一个使用友元函数来更改私有成员的类:
class BankAccount { private: int balance; public: // 友元函数可以访问私有成员 friend void addMoney(BankAccount& account, int amount); }; // 友元函数的定义 void addMoney(BankAccount& account, int amount) { account.balance += amount; }
在这个示例中,addMoney
函数被声明为 BankAccount
类的友元函数,因此它可以访问该类的私有成员 balance
rrreee
addMoney
diisytiharkan sebagai fungsi rakan bagi kelas BankAccount
, jadi ia boleh akses baki
ahli persendirian dan naikkan nilainya. 🎜Atas ialah kandungan terperinci Apakah skop kebenaran fungsi rakan C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!