如何使用 typedef unsigned 在 UML 中编写数据属性

how to write data attributes in UML with typedef unsigned

这是我的示例代码我的问题是我如何在 UML Class 图中编写 uint delay 图,因为它是 typedef unsigned ---------- ---------------------------------------------- ------------------------------我应该这样写吗? - delay : int 还是这样? - delay : uint-------------------------------------

typedef unsigned int uint; 

class MyBreakoutGameType : ...
{
public:

private:
     uint delay;
};

上述代码的图表应如下所示

UML 有一些预定义的基本类型,例如"Integer",但 "int" 不是 UML 中预定义的基本类型。可以使用带有 «primitive» 关键字的 classifier 对新的基本类型进行建模(UML 2.5 规范,第 10.2.5 节)。指定对应的C++数据类型,不妨加个注释:

然后,你可以使用这个原始数据类型作为属性的数据类型,像这样:

当然,这使得 class 依赖于 «primitive» uint 的存在。您可以通过绘制从 MyBreakoutGameType 到 uint 的虚线箭头来强调这种依赖性,但这是可选的。

Enterprise Architect 13.5 版确实将 typedefs 导入为 classes 并带有 «typedef» 构造型。然后通过泛化引用原始类型。这样底层类型的信息就不会丢失。

如果 «typedef» 构造型未定义(并且不应添加到使用的配置文件中),您可以使用与原始类型有 «import» 关系的普通 class .

This answer 建议仅使用 «import» 关系指定连接器上的别名。我不喜欢该解决方案,因为这样就无法引用别名。