友元
-
友元函数
-
#pragma one // 只导入一次 class CHero { int hp; int mp; public: CHero(); ~CHero(); friend void changeHeroHp(CHero & h); friend void changeHeroMp(CHero & m); public: int GetHeroHp() const{return hp}; int GetHeroMp() const{return mp}; }
友元不属于函数,就算在类中定义,也不属于类
但是可以访问类中的私有成员,传参数需要传输类的引用
-
友元类
- 类B为类A的友元类,,B类中的所有成员都可以访问A中的成员 必须在类外声明 friend class B;
- 三个特点:
- 单方向
- 不传递
- 不继承
-
类B为类A的友元类 ,B与A的儿子不是友元关系,但是B的儿子与A是友元