定义:既可以是不属于任何类的非成员函数又可以是另一个类的成员函数

意义1:友元是一扇通向私有(保护)类的大门

形式:声明函数时前加friend(此声明可以放在公有部分和私有部分和保护部分)

将非成员函数定义为友元函数:

注:a、友元函数的定义既可以在类内,也可以在类外

b、友元函数中使用私有成员:对象名.私有成员名  eg:a.name

c、友元函数无this指针

d、在类外部定义友元函数时,不必像成员函数那样,在函数名前面加上”类名::”

e、友元函数必须通过或对象指针或对象引用来访问该对象的数据成员 eg:void disp(girl &x)

意义2:

形式:friend void 成员函数所在类::函数名(所在类 &x)

将成员函数定义为友元函数(称为友元成员函数):

调用格式:eg:b1.disp(g1)注:boy中的成员函数是girl中的友元函数

 posted on 2017-03-28 13:18  加油!!!  阅读(134)  评论(0)    收藏  举报