编译器错误 C2391

“identifier”:不能在类型定义过程中使用“friend”

friend 声明包括完整的类声明。 friend 声明可以指定成员函数或详细类型说明符,但不能指定完整的类声明。

下面的示例生成 C2326:

// C2391.cpp
// compile with: /c
class D {
   void func( int );
};

class A {
   friend class B { int i; };   // C2391

   // OK
   friend class C;
   friend void D::func(int);
};