基本操作

IBM® Rational® Rhapsody® が自動的に生成する操作の他に、オブジェクトに独自の操作を定義することができます。 それぞれの操作に、名前と戻りの型があり、引数を含む場合もあります。 ユーザー定義の操作は、Rational Rhapsody基本操作と呼ばれます。

オブジェクト操作は (関数あるいはグローバル操作とは対照的に) 同じ戻りの型を持つ C 関数にマップされます。 操作に生成される最初の引数は、その操作が作動する特定のオブジェクトに対するポインターです。 me ポインターに続くのは、モデルに指定される操作の引数のオリジナル・リストです。

例えば、オブジェクト・タイプ Bprint() という名前の操作に、次のようなプロトタイプが生成されます。

void B_print(B* const me);

B の宣言ファイルには関数プロトタイプが生成されます。唯一の引数は、me と呼ばれる、タイプが B のオブジェクトへのポインターです。

モデルの Bprint() 操作に対する実装に以下の行を入力してください。

char *str;
str = "This is B";
printf("%s¥n", str);

実装ファイルの print() の本体に次の行が追加されます。

void B_print(B* const me) {
    NOTIFY_OPERATION(me, NULL, B, print, print(), 0,
        print_SERIALIZE);
    {
        /*#[ operation print() */
        char *str;
        str = "This is B";
        printf("%s¥n", str);
        /*#]*/
    }
}

/*#[ 記号と /*#] 記号の間の操作は、手動で編集できます。 「コード」 > 「ラウンドトリップ」 > <構成名>を選択して変更をモデルにラウンドトリップさせてください。

アニメーションが有効に設定されて、操作にアニメーション化が必要な引数がない場合、操作 (例えば、print_SERIALIZE など) のために SERIALIZE マクロが生成されます。 SERIALIZE マクロは、トレース/アニメーション設定の間、操作を表示するために使用されます。 SERIALIZE マクロは、インライン操作に対しては生成されません。


フィードバック