如何在UML中建模1到0 .. *聚合

时间:2017-12-27 17:35:56

标签: c++ uml enterprise-architect

我想用容器建模Hal_device_factory类,它收集指向IHal_subfactory类型接口的指针。

我在Enterprise Architect中制作了这样的类图:

enter image description here

然后我为这个图生成了源代码,这就是我所拥有的:

std::set<IHal_subfactory>  *m_IHal_subfactory;

但是我期待这样的事情:

std::set<IHal_subfactory*>  m_IHal_subfactory;

所以我的问题是我做错了什么? 模型错了还是什么?

1 个答案:

答案 0 :(得分:3)

我认为,你的模型是正确的。

如果您想要set实例而不是指针

您应该将聚合遏制设置为Value而不是Reference

在您的聚合关系中 - &gt;转到属性 - &gt; 角色 - &gt;在来源部分 - &gt;在高级部分的列表中 - &gt;将遏制设置为Value