7

StarUML 5.0では、タイプGuid [](Guid構造の配列)の属性を持つクラスを定義しようとしています。ただし、StarUMLは角かっこを自動的に破棄するため、「-guids:Guid[]」を入力することはできません。

私は他のモデリングツールを試していません...StarUMLでこれを行う方法を知りたいだけです。

StarUMLは、 "-guids:Guid [10]のように配列の長さを指定すると受け入れられるようですが、StarUMLによって生成されたコードでは、このフィールドは次のようになります。

private Guid guids; //the square brackets are missing;

または、「-guids:Guid *」のようなアスタリスクを追加できます。生成されたコードでは、フィールドは次のようになります。

private Guid* guids; 

これは、C ++ではポインターと配列が概念的に交換可能であるという事実があっても、私が望んでいることではありません。(私はC#でコーディングしています)

4

1 に答える 1

12

StarUMLは、標準のUMLとは少し異なる方法で配列を定義します。特定の問題については、[*]を使用して配列を定義します。以下の最初の例はこれを説明しています。

未定義の要素数で配列を定義します。

-guids: Guid[*]

特定の数の要素で配列を定義します。

-guids: Guid[16]

未定義の要素数でベース0配列を定義します。

-guids: Guid[0..*]

未定義の要素数でベース1配列を定義します。

-guids: Guid[1..*]

特定の数の要素を使用して特定の基本配列を定義します。

-guids: Guid[1..100]
于 2011-11-09T16:37:41.380 に答える