//友元函数  友元类
#include<iostream>
using namespace std; class PointB
{
public:
friend class PointC;
//类PointC是类PointB的友元类--意味着类PointC对象可以调用PointB中所有的成员
void Test(){
;
}
private:
int x;
int y;
}; class PointC
{
public:
void printfPointB(){
//调用其友元类的私有属性
cout << pb.y << endl;
//调用PointB的成员函数
pb.Test();
}
private:
PointB pb;
}; class PointA
{
public:
//友元函数
friend void Friendfun(PointA* pin);
int GetA(){
return a;
}
int GetB(){
return b;
}
private:
int a;
int b;
}; //friend 关系户
//const(C语言)冒牌货
//register cpu身边的小太监(寄存器)
//typedef 混号王(起别名) //友元函数
//友元必须有一个参数,就是友元函数所在类的对象指针(不然无法访问对象的私有属性)
//友元函数是一个全局函数
//友元函数破坏类的封装性
void Friendfun(PointA* pin){
//可以直接访问类的私有成员
pin->a = ;
pin->b = ;
} void protectA(){
PointA *p1 = new PointA();
Friendfun(p1);
cout << "a=" << p1->GetA() << ";b=" << p1->GetB() << endl;
if (p1!=NULL)
{
delete p1;
}
} void main(){
protectA();
system("pause");
}

最新文章

  1. miniprofiler的对数据库的监测使用。以nancy,petapoco为例
  2. BC#86 1003NanoApe Loves Sequence Ⅱ[two-pointer]
  3. XidianOJ 1172 Hiking
  4. U盘
  5. ecshop 优化_将商品详情页goods.php重命名为shangpin.php
  6. [HDOJ4022]Bombing(离散化+stl)
  7. 1. Android 系统上一款开源的图表库
  8. Elasticsearch的使用场景深入详解
  9. 使用Intellij Idea自定义MVC框架
  10. JavaScript的基本使用
  11. jquery.query-*.js 操作url
  12. C# EntityFramework Code First 迁移 降级 回退到空数据库
  13. Windows命令行设置dns
  14. C# 动态代码生成控件后其他事件不能获取该控件的值
  15. 同时执行多个$.getJSON() 数据混乱的问题的解决
  16. 漏洞复现——httpd换行解析漏洞
  17. QT5入门之23 -QT串口编程(转)
  18. Uva10048 Audiophobia (Floyd)
  19. 8VC Venture Cup 2016 - Elimination Round F - Group Projects dp好题
  20. java并发编程实战:第十三章----显示锁

热门文章

  1. 在linux下安装mysql
  2. 如何使用angularjs操作cookie
  3. 15个重要Python面试题 测测你适不适合做Python?
  4. Arrays.asList的用法
  5. Python list替换元素
  6. proxy [ˈprɒksi] 代理
  7. js dom获取
  8. 〖Android〗查找Android中的/system/lib中增加的lib文件是否在apk文件中
  9. 在Form中调用请求并直接打印结果
  10. 使用多字节字符集的跨平台(PC、Android、IOS、WP)编码/解码方法