一、友员类,一个类是另一个类的友员
class n2;//n1前声明n2
class n1
{
friend class n2;
void test1(){}
};
class n2//可以调用n1类的私有成员和成员函数
{
void test2()
{
n1 t;
t.test1();
}
};
二、友员函数,一个类是某个函数的友员
该函数不能是类的成员函数,实例如下:
class N2
{
friend void test();
void test2(){}
};
void test()//该函数可以调用N2类的私有成员和成员函数
{ N2 t; t.test2();}
不存在莫个类的成员函数是另一个类的友员函数的情况。
你搞清楚啥叫友元函数了么
成员函数就别友元了。。。