次の方法で共有


noncreatable

単独ではインスタンス化できないオブジェクトを定義します。

[noncreatable]

解説

作成 C++ 属性に 作成 の MIDL の属性と同じ機能を持ちますが生成された .IDL ファイルにコンパイラが自動的に渡されます。

この属性はATL を使用してプロジェクト内で使用するときは属性の動作が変わります。上記の動作に加えて属性も OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO マクロを挿入します。このマクロを ATL オブジェクトには外部で作成できないことを示します。

使用例

// cpp_attr_ref_noncreatable.cpp
// compile with: /LD
#include <unknwn.h>
[module(name="MyLib")];

[object, uuid("11111111-1111-1111-1111-111111111111")]
__interface A 
{
};

[coclass, uuid("11111111-1111-1111-1111-111111111112"), noncreatable]
class CMyClass : public A 
{
   HRESULT xx();
};

必要条件

属性コンテキスト

対象

クラス struct

複数回の適用

必要な属性

コクラス

無効な属性

なし

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

参照

その他の技術情報

IDL 属性

クラス属性

Attributes Samples