注意
1.友元函数不能继承
2.友元(类)函数没有this指针
3.友元函数破坏类的封装性
4.全局友元函数可以直接调用(而不需要借助对象或者指针
例子
class A;
class B
{
public:
void fri_B(A a);
};
class A
{
int n = 1;
public:
friend void fri(A a); //全局函数友元
friend void B::fri_B(A a); //类函数友元
};
void fri(A a)
{
cout << "全局:";
cout <<a.n;
cout << endl;
}
void B::fri_B(A a)
{
cout << "B:";
cout <<a.n;
cout << endl;
}
int main() {
A a;
fri(a);
B b;
b.fri_B(a);
return 0;
}
版权声明:本文为weison_x原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。