友元全局函数:友元全局函数中,可以访问另一个类的所有成员
class person {
friend int main();
private:
string name = "ZJU";
int age = 100;
};
int main()
{
person p;
cout << p.age;
return 0;
}
友元类的所有成员函数都可以访问另一个类的所有成员
class person {
friend class animal;
private:
string name = "ZJU";
int age = 100;
void show() const
{
cout<<name<<" "<<age;
}
};
class animal {
public:
void f(const person& c)
{
person p;
cout << p.name;
c.show();
}
};
注意:友元不能继承;友元是单向的