我們可以聲明一個類的構造函數是朋友嗎?我認爲這不可能。但是我在某處讀到它可以,但我無法做到。如果可以,請提供一些示例代碼。構造函數可以成爲C++中的朋友嗎?
24
A
回答
30
是它可以:
class Y
{
public:
Y();
};
class X
{
private:
void foo() {}
friend Y::Y();
};
Y::Y()
{
X x; x.foo();
}
作爲每
11.3好友[class.friend]5)當朋友聲明是指一個重載名稱或操作員,只指定功能由參數類型變成朋友。 一類X的 成員函數可以是一個類Y的朋友
[實施例:
class Y {
friend char* X::foo(int);
friend X::X(char); // constructors can be friends
friend X::~X(); // destructors can be friends
};
末端示例]
(重點煤礦)
相關問題
- 1. C++朋友構造
- 2. C++中的朋友函數
- 3. 朋友函數C++
- 4. 構造函數可以在C++中調用另一個構造函數嗎?
- 5. 朋友類可以在C++中調用私有構造函數嗎? (和什麼是辛格爾頓)
- 6. c + +重載構造函數與新類型/類和朋友
- 7. 在C++中,構造函數和析構函數可以是內聯函數嗎?
- 8. 朋友函數和複製構造函數
- 9. 虛函數不能成爲朋友
- 10. 你可以用Facebook圖形API查找朋友的朋友嗎?
- 11. 派生類可以使用基類的朋友函數嗎?
- 12. jqGrid和Seo - 他們可以成爲朋友嗎?
- 13. C++中的朋友函數Python Boost
- 14. C++:boost :: scoped_ptr可以在構造函數中初始化嗎?
- 15. 可以在c#中擴展構造函數嗎?
- 16. 是構造函數生成的默認構造函數嗎?
- 17. 類可以使用默認的構造函數/析構函數嗎? C++
- 18. C++:傳遞給非朋友的朋友函數
- 19. 調用朋友類的析構函數
- 20. 我可以在外部構造函數中爲參數類型構建一個無參數構造函數嗎?
- 21. 模型構造函數可以在Rails中爲空嗎?
- 22. 在C++中使用朋友函數
- 23. 有什麼方法可以獲取朋友或朋友的朋友的聊天數據嗎?
- 24. 不同名稱空間的模板模板參數可以成爲朋友嗎?
- 25. 不允許在朋友函數中使用私有構造函數調用
- 26. VS 2012可以生成類構造函數嗎?
- 27. 只有靜態成員函數的朋友類作爲C++中的朋友模塊?
- 28. 我們可以解構任意的數據構造函數嗎?
- 29. C++:多態複製構造函數可以工作嗎?
- 30. C++構造函數可以是模板嗎?
你爲什麼不宣佈全班同學是朋友? – wilx
發佈您的代碼。 –
@KolyolyHorvath:這在一般情況下很有用,但你會在這裏展示什麼? '朋友<這裏有什麼>;'?這並沒有增加任何問題。 – MSalters