StarUML类图:添加Guid []类型的属性

ken*_*yzx 5 class-diagram staruml

在StarUML 5.0中,我试图定义一个类型为Guid [](Guid Structure数组)的类.但是不允许输入"-guids:Guid []",因为StarUML会自动丢弃方括号.

我还没有尝试过其他建模工具......只想知道如何使用StarUML.

如果我提供数组的长度,StarUML似乎接受,比如"-guids:Guid [10]",但是在StarUML生成的代码中,这个字段就像是

private Guid guids; //the square brackets are missing;
Run Code Online (Sandbox Code Playgroud)

或者我可以在生成的代码中添加类似"-guids:Guid*"的星号,字段就是这样

private Guid* guids; 
Run Code Online (Sandbox Code Playgroud)

这不是我想要的,即使在C++中,指针和数组在概念上是可互换的.(我在C#编码)

Kar*_*arl 9

StarUML定义数组与标准UML略有不同.对于您的具体问题,我会使用[*]来定义数组.下面的第一个例子描述了这个.

定义具有未定义数量的元素的数组:

-guids: Guid[*]
Run Code Online (Sandbox Code Playgroud)

定义具有特定数量元素的数组:

-guids: Guid[16]
Run Code Online (Sandbox Code Playgroud)

使用未定义的元素数定义基数为0的数组:

-guids: Guid[0..*]
Run Code Online (Sandbox Code Playgroud)

使用未定义的元素数定义基数为1的数组:

-guids: Guid[1..*]
Run Code Online (Sandbox Code Playgroud)

使用特定数量的元素定义特定的基本数组:

-guids: Guid[1..100]
Run Code Online (Sandbox Code Playgroud)

  • 我已经看过所有语言的代码生成过程.似乎没有正确生成任何语言.StarUML总是将[]从声明中删除. (2认同)