2010-12-04 67 views
5

我如何声明B的构造函数是A的朋友?我试过了:如何声明一个朋友是C++中另一个尚未定义的类的成员函数?

class A 
{ 
    private: 
    A(); 
    public: 
    friend B::B(); 
}; 

class B 
{ 
    public: 
    B(); 
}; 
+4

刚刚编辑它,所以它不会被关闭。有些人会在那里触发快乐的闭幕 - 请给潜在的非本族人或新手带来一些松懈。 @IamMan,欢迎来到StackOverflow - 试着让问题清晰并正确地缩进代码,否则如果我们很多人不理解它,问题就会被关闭。此外,如果有人正确回答问题,请单击左侧的复选标记以表明它是正确的答案。 – 2010-12-04 20:36:13

回答

7

取代B::class;

class A 
{ 
private: 
    A(); 
public: 
    friend class B; 
}; 

class B 
{ 
public: 
    B(); 
}; 
+6

这个答案实际上使B的所有朋友。这可能是OP想要的,但不是他们要求的。他们要求的是不可能的。其他人应该了解这个问题的答案。 – 2010-12-04 22:27:01

相关问题