何为友元,我的理解,友元就是把另一个类当作是我的朋友,朋友之间,是可以访问一些私有的变量的。
所以,当我们将一个累声明为自己的友元类的时候,那么这个类就可以访问我们自己类中的某些私有变量等
当我把某个函数声明为自己的友元函数的时候,这个函数也就可以获取到我们自己的稀有变量了

如下代码

#include <iostream>
#include <stdio.h>
using namespace std;
class CHand
{ private:
int fingernum;
void write();
public:
CHand();
friend class CMan;
friend int getfingetfriend();
};
class CMan
{
public:
CHand hand;
int getfingernum();
void handwrite(); };
int CMan::getfingernum()
{
return hand.fingernum;
}
void CMan::handwrite()
{ hand.write();
}
CHand::CHand()
{
fingernum =5;
}
void CHand::write()
{
cout<<"Hand can write\n";
} int getfingetfriend()
{
CHand hand;
return hand.fingernum; } int main()
{ CMan man;
cout<<"the man finget nunber is:"<<man.getfingernum()<<endl;
cout<<"thr firned function get finget number is:"<<getfingetfriend();
cout<<endl;
man.handwrite();
return 0;
}

最新文章

  1. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )
  2. 点我吧工作总结(技术篇) Velocity
  3. ZOOM - 简单易用的 jQuery 照片相册插件
  4. TCP/IP协议分层
  5. Maven跳过test打包
  6. 蓝牙 MultipeerConnectivity
  7. Linux 命令 - file: 确定文件类型
  8. 关于Git里程碑
  9. GC overhead limit exceeded解决
  10. 在子jsp页面中调用父jsp中的function或父jsp调用子页面中的function
  11. shell脚本学习(二)
  12. python 小程序—循环和列表训练
  13. ArcGIS JS API多线程克里金插值
  14. Centos7安装jdk-12的详细过程
  15. TCP 服务端接收数据解析工具类
  16. Javascript正则表达入参是null
  17. SSE图像算法优化系列六:OpenCv关于灰度积分图的SSE代码学习和改进。
  18. Keepalived+MySQL实现高可用
  19. Java快速学习笔记01
  20. 解决使用window.history.back(),返回上一页后,页面不刷新问题

热门文章

  1. 【Openjudge 9277 Logs Stacking堆木头】 题解
  2. Unity3d-制作粒子光环特效
  3. centos7 安装 mysql5.7, 以及安装中遇到的问题
  4. 利用css transition属性实现一个带动画显隐的微信小程序部件
  5. Oracle客户端与Toad、plsql developer安装
  6. navicat 链接oracle时出现的各种问题
  7. JS继续学习记录(一)
  8. rest_framework--序列化组件
  9. DOM操作指令整理
  10. webpack 之 webpack-dev-server自动刷新