The Programmer
C++
C++ Friend Class and Function
Friend
將另一個 class 設成 firend,可以讓該 class 存取自己 private data,參考底下的範例:
A 將 B 設成 firend,則物件 B 裡 private、protected、public function 都可以存取該物件 A 裡的 private、protected、public 的資料。
1 |
|
上面的程式碼代表著 A 的 private data 可以給 B 使用。
A 將某個 function 設成 firend,則該 function 都可以存取該物件 A 裡的 private、protected、public 的資料。
1 |
|
上面的程式碼代表著 A 的 private data 可以給 showA function 使用。
friend function 可以放在 class 的任何地方,不受關鍵字 private、protected、public 的限制。