本文参考:http://www.itxueyuan.org/view/100.html
类的封装性实现了数据隐藏,即类的私有成员在该类的作用域之外是不可见的。但有时可能需要在类的外部访问类的私有成员,为此 C++ 提供了一种允许类外的函数或其他的类访问该类的私有成员的方法,它通过关键字 friend 把其他类或函数声明为一个类的友元。
友元的使用就好比一个独立的个人,私有成员是个人的秘密,本来对外界是保密的,但对于好朋友却没必要隐藏,这样好朋友就可以了解个人的所有秘密。在编程中,如果模拟空调和遥控器的程序,就可以使用友元关系来处理,遥控器不是空调或空调的一部分,但可以改变空调的状态。
本节只讲解 C++ 友元函数,C++ 友元类将在下节讲解。