回答
在C++中,不能創建兩個類A和B,其中A將B和B的成員變量將有A的成員變量,這是因爲大小必須知道編譯器解析成員的時間。如果你仔細想想,這種結構將是無限大:
A將具有B-將有將有B就擁有一個....
這就是爲什麼我們不能這樣做。
您只能將指針作爲變量。這是因爲指針最後只是內存地址而已,並且內存地址總是已知的(4或8字節)。
A將有B *,就是這樣。
B將有A *,就是這樣。
爲了達到這個目的,你可以做前向聲明。
並非完全如此。首先,它也適用於參考(儘管在實踐中可能不是一個好主意)。其次,指針無法保證4或8個字節。 – 2015-03-02 17:34:35
我相信'A'也可以包含***參考***到'B','B'參考'A'? (非常類似於指針,但不完全) – abelenky 2015-03-02 17:34:51
@abelenky:沒錯。儘管對於成員變量來說,指針通常是可取的。 – 2015-03-02 17:35:21
- 1. 如何爲兩個ViewModel類編寫一個通用類?
- 2. 如何用兩個模板參數編寫一個類,其中一個是另一個的列表/數組?
- 3. 使用另一個類編寫一個類
- 4. 如何從一個數組中獲取一個值用於另一個類中?
- 5. 如何從一個類調用另一個類的函數C++
- 6. 取決於另一個propertey
- 7. 從一個類中獲取一個密鑰到另一個類
- 8. 如何用兩個xib文件創建一個Objective-C類(一個用於iPhone,另一個用於iPad)
- 9. 用另一個重寫一個css類?
- 10. iReport:如何使一個組取決於另一個
- 11. 如何在一個類中調用另一個類的方法
- 12. 如何訪問一個類到另一個c#類
- 13. 如何從另一個類中的一個類調用方法
- 14. 我可以編寫兩個單獨的pojo類,一個用於驗證,另一個用於休眠映射
- 15. 用C++編寫一個簡單的類
- 16. 如何從一個類獲取indexPath到另一個類
- 17. 如何從一個類獲取字符串到另一個類?
- 18. 如何編輯另一個類的值?
- 19. 如何從C#中的另一個類調用一個變量
- 20. 如何寫一個內聯的CSS到div的另一個類?
- 21. 如何在另一個類中使用一個類的NSMutablearray?
- 22. 驗證兩個表單的提交取決於另一個
- 23. 的Objective-C,如何從另一個類
- 24. 從位於另一個類中的一個類訪問變量
- 25. 如何讓一個DLL延遲取決於另一個DLL?
- 26. 如何獲得一個列值取決於另一個
- 27. Android - 如何使一個項目取決於另一個
- 28. 編寫Java類以在另一個Java類中使用
- 29. 寫,取決於一個變量R中
- 30. 如何從一個類中的變量獲取Android中的另一個類?
請張貼代碼(使用4個空格縮進,或突出顯示並單擊「{}」按鈕),而不是圖像。如果一個類依賴於另一個類,那麼在使用它之前,您需要聲明(並可能定義)它所依賴的類。 – 2015-03-02 17:11:48
@stefan我不認爲這是(必然)循環依賴。 – crashmstr 2015-03-02 17:30:29
@crashmstr不一定,我同意。但是這是一個非問題,或者它是循環依賴。 – stefan 2015-03-02 17:31:28