【友元函数】
之前只知道友元类型 friend class。原来C++中还有友元函数 friend class。
1)C++中引入友元函数,是为在该类中提供一个对外(除了他自己意外)访问的窗口;
2)这个友元函数他不属于该类的成员函数,他是定义在类外的普通函数,只是在类中声明该函数可以直接访问类中的private或者protected成员。
使用友元函数声明的一般形式:
friend <返回类型> <函数名> (<参数列表>);
使用友元函数注意的要点:
1、类中通过使用关键字friend 来修饰友元函数,但该函数并不是类的成员函数,其声明可以放在类的私有部分,也可放在共有部分。友元函数的定义在类体外实现,不需要加类限定。
2、一个类中的成员函数可以是另外一个类的友元函数,而且一个函数可以是多个类友元函数。
3、友元函数可以访问类中的私有成员和其他数据,但是访问不可直接使用数据成员,需要通过对对象进行引用。
4、友元函数在调用上同一般函数一样,不必通过对对象进行引用。
参考:
1、https://blog.csdn.net/qq_26337701/article/details/53996104