【C++学习笔记】Step5 友元函数、友元类

举报
王建峰 发表于 2021/11/19 02:21:05 2021/11/19
【摘要】 类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。 参考 菜鸟教程 码云:https://gitee.com/hinzer/my-notes-of-C_plus   思维导图   代码 #include "iostream" usi...

类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。

参考 菜鸟教程

码云:https://gitee.com/hinzer/my-notes-of-C_plus

 

思维导图

 

代码


  
  1. #include "iostream"
  2. using namespace std;
  3. class A
  4. {
  5. friend class B;
  6. public:
  7. A()
  8. {
  9. num = 10;
  10. }
  11. friend void say_num(A a); //声明友元函数
  12. private:
  13. int num; //类A的私有成员变量
  14. };
  15. class B:public A
  16. {
  17. public:
  18. B()
  19. {
  20. cout << num << endl;
  21. }
  22. };
  23. void say_num(A a)
  24. {//say_num不是类的成员函数。 是类A的友元函数
  25. cout << "say num:" << a.num << endl;
  26. }
  27. int main(int argc, char const *argv[])
  28. {
  29. B p;
  30. A a;
  31. say_num(a);
  32. return 0;
  33. }

 

编译运行

 

文章来源: blog.csdn.net,作者:hinzer,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/feit2417/article/details/92800368

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。