类与对象 —— 友元


友元

生活中你的家有客厅(Public),有你的卧室(Private)

客厅所有来的客人都可以进去,但是你的卧室是私有的,也就是说只有你能进去

但是呢,你也可以允许你的好闺蜜好基友进去。

在程序里,有些私有属性 也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术

友元的目的就是让一个函数或者类 访问另一个类中私有成员

友元的关键字为 ==friend==

友元的三种实现

  • 全局函数做友元
  • 类做友元
  • 成员函数做友元

4.4.1 全局函数做友元

 1 #include <iostream>
 2 #include <string>
 3 using namespace std;
 4 class building
 5 {
 6     //goodgay全局函数是building的好朋友,可以访问Building 中的私有成员
 7     friend void goodgay(building* Building);
 8 public:
 9      building()
10     {
11         m_sittingroom = "客厅";
12         m_badroom = "卧室";
13     }
14 public:
15     string m_sittingroom;//客厅
16 private:
17     string m_badroom;
18 };
19 //全局函数
20 void goodgay(building* Building)
21 {
22     cout << "好基友全局函数 正在访问 :" << Building->m_sittingroom << endl ;
23     cout << "好基友的函数 正在访问 :" << Building->m_badroom;
24 }
25 int main()
26 {
27     building Building;
28     goodgay(&Building);
29 }

类与对象 —— 友元

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/283201.html

(0)
上一篇 2022年8月31日
下一篇 2022年8月31日

相关推荐

发表回复

登录后才能评论