C++学习笔记:友元函数和友元类

来源:互联网 发布:js实现分页 编辑:程序博客网 时间:2024/05/22 12:54

友元函数,故名思议,是类的好朋友。友元函数破坏了类的封装性。友元函数通过对象参数可以访问私有数据成员。


友元类:

1. 若B类是A类的友元类,则B类的所有成员函数都是A类的友元函数。

2. 友元类通常设计为一种对数据操作或类之间传递消息的辅助类。


// 友元函数.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;class A{private:int a;public:A(int _a=0){a = _a;};~A(){};int getA(){return a; }friend class B;friend void modify(A *t,int x);//1.声明的位置和public、private没有关系//2.函数modify是类A的好朋友 即友元函数};class B{public:void set(int a){objA.a = a;}void printA(){cout << objA.a << endl;}private:A objA;};void modify(A *t, int x){t->a = x;}int _tmain(int argc, _TCHAR* argv[]){A a(10);cout << a.getA() << endl;modify(&a, 11);cout << a.getA() << endl;B objB;objB.set(300);objB.printA();return 0;}


0 0
原创粉丝点击