定义:既可以是不属于任何类的非成员函数又可以是另一个类的成员函数
意义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
浙公网安备 33010602011771号