一、友元的产生条件:
- 类的主要特点之一是数据隐藏,即类的私有成员只能在类定义的范围内使用,也就是说私有成员只能通过它的成员函数来访问。
- 但是,有时候需要在类的外部访问类的私有成员。为此,就需要寻找一种途径,在不放弃私有数据安全性的情况下,使得类外部的函数或类能够访问类中的私有成员——友元。
注:
- 友元相当于一扇通往私有成员的后门
- 友元是外部的函数,它可分为:友元函数,友元成员,友元类
二、说明
友元的缺点: 破坏了函数的封装性
2.1 普通函数作为友元
友元函数不是当前类的成员函数,而是独立于当前类的外部函数,但它可以访问该类的所以对象的成员,包括私有成员和公有成员。
在类定义中声明友元函数时,需在其函数名前加上关键字