typedef、struct、および enum C++ のキーワードには、以下の属性が適用されます。
typedef
| 属性 | 説明 |
|---|---|
| case | union で switch_type 属性と共に使用します。 |
| custom | 独自の属性を定義できるようにします。 |
| export | データ構造を .idl ファイルに配置します。 |
| first_is | 転送する最初の配列要素のインデックスを指定します。 |
| helpcontext | この要素に関するヘルプ ファイルの情報をユーザーに表示するコンテキスト ID を指定します。 |
| helpfile | タイプ ライブラリのヘルプ ファイルの名前を設定します。 |
| helpstring | 適用先となる要素を記述するために使用される文字列を指定します。 |
| library_block | .idl ファイルのライブラリ ブロック内にコンストラクトを配置します。 |
| ptr | ポインターを完全ポインターとして指定します。 |
| public | typedef が .idl ファイル内から参照されない場合でも、タイプ ライブラリに含まれるようにします。 |
| ref | 参照ポインターを識別します。 |
| switch_is | 共用体メンバーを選択する共用体判別として機能する式または識別子を指定します。 |
| switch_type | 共用体判別として使用される変数の型を識別します。 |
| unique | 一意のポインターを指定します。 |
| wire_marshal | アプリケーション固有のデータ型ではなく、転送に使用されるデータ型を指定します。 |
enum
| 属性 | 説明 |
|---|---|
| custom | 独自の属性を定義できるようにします。 |
| export | データ構造を .idl ファイルに配置します。 |
| uuid | クラスまたはインターフェイスの一意の ID を指定します。 |
| v1_enum | 指定された列挙型を 16 ビットの既定値ではなく、32 ビットのエンティティとして送信するように指示します。 |
union
| 属性 | 説明 |
|---|---|
| custom | 独自の属性を定義できるようにします。 |
| export | データ構造を .idl ファイルに配置します。 |
| first_is | 転送する最初の配列要素のインデックスを指定します。 |
| last_is | 転送する最後の配列要素のインデックスを指定します。 |
| length_is | 転送する配列要素の数を指定します。 |
| max_is | 有効な配列インデックスの最大値を指定します。 |
| size_is | サイズ設定されたポインター、サイズ設定されたポインター間、および単一または多次元配列に割り当てられるメモリのサイズを指定します。 |
| unique | 一意のポインターを指定します。 |
| uuid | クラスまたはインターフェイスの一意の ID を指定します。 |
カプセル化されていない共用体
| 属性 | 説明 |
|---|---|
| ms_union | カプセル化されていない共用体のネットワーク データ表現の配置を制御します。 |
| no_injected_text | 属性の使用の結果としてコンパイラがコードを挿入しないようにします。 |
struct
| 属性 | 説明 |
|---|---|
| aggregatable | クラスが集計をサポートしていることを示します。 |
| aggregates (集計する) | コントロールがターゲット クラスを集計することを示します。 |
| appobject | 完全な .exe アプリケーションに関連付けられているアプリケーション オブジェクトとしてコクラスを識別し、コクラスの関数とプロパティがこのタイプ ライブラリでグローバルに使用可能であることを示します。 |
| coclass | ActiveX コントロールを作成します。 |
| com_interface_entry | COM マップにインターフェイス エントリを追加します。 |
| control | ユーザー定義型がコントロールであることを指定します。 |
| custom | 独自の属性を定義できるようにします。 |
| db_column | 指定した列を行セットにバインドします。 |
| db_command | OLE DB コマンドを作成します。 |
| db_param | 指定したメンバー変数を入力または出力のパラメーターに関連付け、変数を区切ります。 |
| db_source | データ ソースへの接続を作成します。 |
| db_table | OLE DB テーブルを開きます。 |
| default | コクラス内で定義されるカスタムまたはディスパッチ インターフェイスが既定のプログラミング インターフェイスを表すことを示します。 |
| defaultvtable | コントロールの既定の vtable インターフェイスとしてインターフェイスを定義します。 |
| event_receiver | イベント レシーバーを作成します。 |
| event_source | イベント ソースを作成します。 |
| export | データ構造を .idl ファイルに配置します。 |
| first_is | 転送する最初の配列要素のインデックスを指定します。 |
| 非表示 | 項目は存在しますが、ユーザー指向ブラウザーでは表示されないことを示します。 |
| implements_category | クラスに実装されているコンポーネントのカテゴリを指定します。 |
| last_is | 転送する最後の配列要素のインデックスを指定します。 |
| length_is | 転送する配列要素の数を指定します。 |
| max_is | 有効な配列インデックスの最大値を指定します。 |
| requires_category | ターゲット クラスで必要なコンポーネントのカテゴリを指定します。 |
| size_is | サイズ設定されたポインター、サイズ設定されたポインター間、および単一または多次元配列に割り当てられるメモリのサイズを指定します。 |
| ソース | クラスで、接続ポイントの COM オブジェクトのソース インターフェイスを指定します。 プロパティまたはメソッドで、メンバーがイベントのソースであるオブジェクトまたは VARIANT を返します。 |
| threading | COM オブジェクトのスレッド モデルを指定します。 |
| unique | 一意のポインターを指定します。 |
| uuid | クラスまたはインターフェイスの一意の ID を指定します。 |
| version | クラスの複数のバージョン中の特定のバージョンを識別します。 |
| vi_progid | バージョンに依存しない形式の ProgID を指定します。 |