2010-12-04 41 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

相關問題