ログイン
検索
メインメニュー
フォーラム一覧   -   トピック一覧
   astah*の使い方
     [質問] 参照型、ポインタ型について
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
ゲスト
投稿日時: 2007-3-17 16:22
[質問] 参照型、ポインタ型について
ゲストの「ゲスト」さんからの投稿です。
---

C++ユーザなのですが、
あるクラス(ClassA)のポインタ型や参照型などを表現するには、
別のクラス(ClassA*, ClassA&)として定義するしかないのでしょうか?
joba
投稿日時: 2007-3-20 10:05
開発者
登録日: 2006-4-27
居住地: Fukui
投稿: 597
Re: [質問] 参照型、ポインタ型について
こんにちは。ご質問ありがとうございます

引用:
別のクラス(ClassA*, ClassA&)として定義するしかないのでしょうか?

はい、現時点ではこの方法でしか定義することができません。
ご希望に沿えず申し訳ございません。

ポイント型や参照型の表現については、将来リリースへの機能追加要望として対応を検討いたします。
ゲスト
投稿日時: 2007-3-20 22:06
Re: [質問] 参照型、ポインタ型について
ゲストの「ゲスト」さんからの投稿です。
---

ご回答ありがとうございました。
ぜひぜひ、対応のご検討をお願いいたします。
naka_aki
投稿日時: 2007-3-22 15:36
常連
登録日: 2006-7-4
居住地:
投稿: 42
Re: [質問] 参照型、ポインタ型について
ところでそれ、やるとしたらどうやってやるのでしょう?

Hogehoge型へのPointerやReference、ってことで、
パラメタライズドクラス
http://uml.ogis-ri.co.jp/reference/cls/cls_parameter.html
として扱うのかな、と直感的には思うのですが、
そういうことでしょうか?

あー、でもパラメタライズドクラスの機能を用意するだけだと、
Pointerなどに特有の

●Hogehogeクラスのメソッドなどがそのままアクセスできる

っていう性質を(UML画面上で操作し易いかたちで)提供するには
至らないですね…
なにか更に一工夫が必要になるのかな…


----------------
A.nakamuraです。

spockear
投稿日時: 2007-5-6 11:22
新米
登録日: 2007-5-6
居住地:
投稿: 1
Re: [質問] 参照型、ポインタ型について
最近JUDEを使い始めた者です.
引用:

C++ユーザなのですが、
あるクラス(ClassA)のポインタ型や参照型などを表現するには、
別のクラス(ClassA*, ClassA&)として定義するしかないのでしょうか?

ポインタとか参照はC++での実装レベルの話なので、純粋にUMLでクラス図を記述しようとするならば、属性ではなくて、関連で結んで表現すべきかと思います.
そして他のクラスがメンバ変数になっている場合は合成集約(◆−)でしょうか.

ゲスト
投稿日時: 2007-5-6 16:21
Re: [質問] 参照型、ポインタ型について
ゲストの「ゲスト」さんからの投稿です。
---

こんにちは。

引用:

ポインタとか参照はC++での実装レベルの話なので、純粋にUMLでクラス図を記述しようとするならば、属性ではなくて、関連で結んで表現すべきかと思います.
そして他のクラスがメンバ変数になっている場合は合成集約(◆−)でしょうか.



関連で持っている場合は、その通りですね。
しかし依存の場合、メソッドの引数や戻り値(の型)に表れてきますので、ポインタや参照を表現する必要がでてきます。
作成したクラスだけではなく、intなど基本型に関しても同様なのが辛いところです。

Kota
投稿日時: 2009-1-30 11:07
開発者
登録日: 2006-5-9
居住地:
投稿: 151
Re: [質問] 参照型、ポインタ型について
みなさん。こんにちは。

この要望は前からあったのですが5.5b1よりようやく対応することができました。
以下のJUDEのプロパティビューに、型修飾子入力用のテキストボックスを追加しました。
* クラスの属性タブ、操作タブ
* 属性のベースタブ
* 操作のベースタブ、パラメタタブ
* 関連の関連端A,Bタブ
* パートの関連端A,Bタブ
* ポートのベースタブ
* テンプレートパラメタのテンプレートパラメタタブ
* テンプレートバインディングのテンプレートパラメタタブ

[siteimg align=left]uploads/thumbs0/910.jpg[/siteimg]







詳細の対応は以下に記載しました。
[JUDE/Professional5.5b1]
・C++対応
 ・C++プロジェクト
 ・型修飾子(*,&等ポインタ情報)の対応
 ・C++プリミティブ型の対応
 ・クラス、属性、操作の[言語]タブ(プロパティビュー)で、C++言語固有の設定が可能
 ・C++ソース出力
 ・JUDE C++リバースプログラムで型修飾子、プリミティブ型の対応

[siteimg align=left]uploads/thumbs0/911.jpg[/siteimg]




[siteimg align=left]uploads/thumbs0/912.jpg[/siteimg]










[siteimg align=left]uploads/thumbs0/913.jpg[/siteimg]









[JUDE/Community5.5b1]
このなかの型修飾子(*,&等ポインタ情報)の対応のみ対応していますが、
JUDE/Professional5.5b1で作成したプロジェクトも問題なく開けます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を