クラスを使用してテンプレート・クラスを作成できます。さらに、一部のテンプレート・パラメーターを、特定のタイプおよび特殊関数として指定して、元のテンプレートと関係のない内容を持つ特殊化または新規クラス/関数を作成できます。
このタスクについて
IBM® Rational® Rhapsody® DiffMergeを使用して、テンプレート情報を見つけてマージできます。
手順
- IBM Rational Rhapsody ブラウザーでクラスをダブルクリックして、クラスの「フィーチャー」ウィンドウを開きます。
- 「一般」タブの「クラス・タイプ」領域で、「テンプレート」ラジオ・ボタンを選択します。
「テンプレート・パラメーター」タブが表示されます。
- 「テンプレート・パラメーター」タブで、<新規> をクリックします。
- <class_n> として作成されるデフォルト名を置き換える名前を入力します。
- デフォルトのタイプを受け入れるか、または「種類」リストから別のタイプを選択します。
- テンプレートの引数を追加するには、「フィーチャーの呼び出し」ダイアログ・ボタン
をクリックして「テンプレート引数」ウィンドウを開きます。「テンプレート引数」ウィンドウに関する、次の情報に注意してください。- 「既存の型の使用」チェック・ボックスを選択すると、タイプを変更して説明を入力できます。
C++ では、テンプレート引数のデフォルト値を指定することもできます。
- 「既存の型の使用」チェック・ボックスをクリアすると、タイプまたは特定のタイプの配列へのポインターなどの、引数タイプをさらに詳細化するコードを入力できます。「C++[Java] 宣言」フィールドにコードを入力すると、定義済みの他の引数を表示することもできます。
- 「OK」をクリックして「テンプレート引数」ウィンドウを閉じ、「テンプレート・パラメーター」タブに戻ります。
- 必要に応じてさらにテンプレートを追加するには、「テンプレート・パラメーター」タブの <新規> をクリックします。
- 「テンプレート・パラメーター」タブ上の引数の順序を決定するには、「項目を上へ移動」
および「項目を下へ移動」
ボタンを使用します。
- 使用する基本テンプレートがある場合は、「基本テンプレート」リスト・ボックスから選択します。このボックスには、このクラスが特殊化される対象のテンプレートが含まれています。インスタンス化されるそのパラメーターが、「基本テンプレート」リスト・ボックスの下のボックスに表示されます。
特殊化パラメーターを定義できるのは、テンプレートを基本クラスとして選択した場合のみです。 注: 特殊化されたテンプレートを削除しようとすると、テンプレートに参照があるというテンプレート引数ダイアログ警告が表示されます。このテンプレートを削除すると、モデルのチェック時にこの特殊化によるエラーが発生します。
- 「OK」をクリックします。
テンプレートがブラウザー内の「クラス」カテゴリーにリストされます。
タスクの結果
いったんテンプレート・クラスを作成したら、コードで直接使用し始めることができます。
また、以下のように、他の状況でもテンプレートを作成できます。
テンプレート・クラスのインスタンス化も参照してください。