友元的作用:提高了程序的运行效率(使得普通函数可以直接访问类的保护数据,避免了类成员函数的频繁调用,即减少了类型检查和安全性检查等都需要时间开销),但它破坏了类的封装性和隐藏性,使得非成员函数可以访问类的私有成员。
在C++中友元可以使友元函数也可以是友元函数
友元函数:友元函数是可以直接访问类的私有成员的非成员函数。是定义在类外的普通函数,不属于任何类,但需要在类的定义中声明,声明时在函数前加friend关键字即可: friend 类型 函数名(形式参数)
友元类:友元的所有成员函数都是另一个类的友元函数,都可以访问另一个类中的隐藏信息(包括私有成员和保护成员),当希望一个类可以存取另一个类的私有成员时,可以将该类声明为另一类的友元类: friend class 类名;
使用友元类注意:
1、友元关系不能被继承。
2、友元关系是单向的,不具有交换性。
3、友元关系不具有传递性。
参考链接:点这里
参考链接2:点这里哦
下一篇:C++11 中 final、override