次の方法で共有


implements_category

適用先クラスが実装するコンポーネント カテゴリを指定します。

[ implements_category(
     implements_category="uuid"
) ]

パラメータ

  • implements_category
    実装するカテゴリの ID。

解説

C++ 属性 implements_category は、適用先クラスが実装するコンポーネント カテゴリを指定します。実装するカテゴリを指定するには、カテゴリ マップを作成し、属性 implements_category で指定するエントリを個別に追加します。詳細については、「What are Component Categories and how do they work?」を参照してください。

この属性を使用する場合は、同じ要素に対して coclassprogid、または vi_progid の各属性 (あるいは、これらの 1 つを表す別の属性) も適用する必要があります。1 つの属性を使用すると、ほかの 2 つは自動的に適用されます。たとえば、progid を適用すると、vi_progid および coclass も適用されます。

使用例

オブジェクトが Control カテゴリを実装するように指定したコード例を次に示します。

// cpp_attr_ref_implements_category.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"

[module (name="MyLib")];
[ coclass, implements_category("CATID_Control"),
  uuid("20a0d0cc-5172-40f5-99ae-5e032f3205ae")]
class CMyClass {};

必要条件

属性コンテキスト

対象

class、struct

複数回の適用

必要な属性

coclassprogidvi_progid のうちの 1 つ

無効な属性

なし

詳細については、「属性コンテキスト」を参照してください。

参照

概念

COM 属性

クラス属性

IMPLEMENTED_CATEGORY

ATL サンプル