在UML類圖中是否有一種公認的描述由boost共享指針保存的對象的方法(即應該使用哪一個,並使用空的或完整的菱形,如聚合或合成)?在UML中繪製智能指針
2
A
回答
2
我不知道如何將智能指針建模爲關係的整體共識。
黑色的鑽石意味着控制生命時間,白色的鑽石意味着不控制生命時間,所以你可以同意在本地使用黑色鑽石for unique_ptr,所有黑色鑽石用於shared_ptr,白色鑽石用於weak_ptr。
如果你真的要建模smart_ptr,我建議增加一個屬性類的關係:
0
| /----------------\
+--+ shared pointer |
| \----------------/
V
2
你的UML類模型應該是抽象的,沒有語言的成語。
實際上,您可以爲每種類型的智能點創建關係的刻板印象,其中包括OCL約束。我對每種子類型的智能指針的具體語義都不太熟悉,以提供您的詳細信息,但OCL Specification應該有所幫助。
相關問題
- 1. 智能指針製造商
- 2. C++ - 智能指針 - 在模板中投射智能指針
- 3. 智能指針在智能指針管理數組內
- 4. C++智能指針
- 5. 與智能指針
- 6. Boost智能指針
- 7. C++中的智能指針
- 8. Boost智能指針和std智能指針有什麼區別?
- 9. 智能指針代替指針
- 10. 指針和智能指針的區別
- 11. 虛空指針到智能指針
- 12. 自定義智能指針代碼issue- couldnt智能指針最終在堆上?
- 13. 在智能指針的bimap中查找原始指針
- 14. 數組和智能指針
- 15. C++:實現智能指針
- 16. 智能指針三規則?
- 17. OpenCV或Boost智能指針
- 18. 智能指針與參考
- 19. 智能指針和dynamic_cast
- 20. 智能指針數組
- 21. OpenMP和智能指針
- 22. 智能指針與PythonQt
- 23. 智能指針和數組
- 24. 激活智能指針?
- 25. 智能指針數組
- 26. 二叉樹智能指針
- 27. 智能指針類predeclaration
- 28. 智能指針::地圖
- 29. C++智能指針表現
- 30. GMP和智能指針
如果你可以繪製UML圖,你也知道對象所有權關係,那麼爲什麼你首先需要一個智能指針呢? – zvrba 2012-02-09 09:54:07