Sli*_*ney 5 c++ boost uml shared-ptr
是否有一种公认的方法来描述 UML 类图中由 boost 共享指针持有的对象(即,应该使用像聚合或组合这样的空菱形还是全菱形)?
我不知道关于如何将智能指针建模为关系的总体共识。
黑色菱形意味着控制生命周期,白色菱形意味着不控制生命周期,因此您可以在本地同意对 unique_ptr 使用黑色菱形,对shared_ptr 使用所有黑色菱形,对weak_ptr 使用白色菱形。
如果您确实想对 smart_ptr 进行建模,我建议向关系添加一个属性类:
0
| /----------------\
+--+ shared pointer |
| \----------------/
V
Run Code Online (Sandbox Code Playgroud)