掲示板一覧 - トピック一覧 EA ソースコード生成・コード生成テンプレート
C++コード生成でクラス変数にthis->をつけるには? |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | トピック |
|---|---|
| 未登録ゲスト | 投稿日時: 2009-7-24 11:01 |
C++コード生成でクラス変数にthis->をつけるには?クラス図上で変数を作成し、変数に対するGetter, Setterを生成しました。
このクラスに対するC++コードを生成すると、例えばGetterのコードは次のようになります。 int SampleCls::GetValue(){ return value; } これを以下のように、クラス変数にthis->をつけて出力することはできるのでしょうか? int SampleCls::GetValue(){ return this->value; } |
|
| tkouno | 投稿日時: 2009-7-24 11:11 |
EA Administrator ![]() ![]() 投稿: 3939 |
Re: C++コード生成でクラス変数にthis->をつけるには?ご質問の内容を出力している箇所は、
コード生成テンプレートの「Operation Body」テンプレートの 12行目かと思います。 11行目のif文で判定し、property getの場合には 12行目の出力を行うようになっています。 そこで、この12行目を変更すれば、ご要望の結果になるかと思います。 ぜひお試し下さい。 追伸: このあたりの概要を効率よく知るためには 無料セミナーがお勧めです。まだ残席があると思います。 https://www.sparxsystems.jp/seminar/EACodeGenerate.htm |
| 未登録ゲスト | 投稿日時: 2009-7-27 9:53 |
Re: C++コード生成でクラス変数にthis->をつけるには?ご回答ありがとうございます。
以下のような変更で無事対応できました。 Getter [変更前] %elseIf opStereotype == "property get" and opTag:"attribute_name" != ""% \treturn %opTag:"attribute_name"%; [変更後] %elseIf opStereotype == "property get" and opTag:"attribute_name" != ""% \treturn this->%opTag:"attribute_name"%; Setter [変更前] %elseIf opStereotype == "property set" and opTag:"attribute_name" != ""% \t%opTag:"attribute_name"% = newVal; [変更後] %elseIf opStereotype == "property set" and opTag:"attribute_name" != ""% \tthis->%opTag:"attribute_name"% = newVal; |
|
| tkouno | 投稿日時: 2009-7-27 10:18 |
EA Administrator ![]() ![]() 投稿: 3939 |
Re: C++コード生成でクラス変数にthis->をつけるには?お忙しい中ご返信ありがとうございました。
また、具体的な変更例のご提示ありがとうございました。 (同じような悩みを持つ方の参考になると思います。) そのほか、ご不明な点がございましたら 遠慮なくご質問ください。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |




