C++中的友元

C++中的友元关系分为3种:

1:友元类

2:友元类成员函数

3:友元普通成员函数

1:友元类

class X{

      friend class Y;

};

在类X的定义中,可以不必对友元类Y进行生命或者定义

2:友元普通成员函数

class X{

     friend void f();

};

同上,在类X的定义中,不必对普通函数f()进行预先声明

3:友元类成员函数

例子1:

class X{

  friend void Y::gety();

};

这是错误的

例子2:

class Y{

   public:

         void gety();

};

class X{

    friend void  Y::gety(); 
};

这是对的,但对gety()函数的定义必须放在对类X的定义之后

原文地址:https://www.cnblogs.com/buxianghe/p/2200451.html