次の方法で共有


winrt::cloaked マーカー構造体テンプレート (C++/WinRT)

winrt::implements に対して使用されるマーカー テンプレートは、実装されたインターフェイスを IInspectable::GetIids メソッドによって返されるインターフェイスの一覧に含めないことを構造体テンプレートに実装します (つまり、実装されたインターフェイスは "クローク" にする必要があります)。

構文

template<typename T>
struct cloaked;

解説

既定では、 IInspectable::GetIids の実装では、 IInspectable から派生したすべてのインターフェイスが報告されます。 クロークされたマーカー テンプレートを使用して、その一覧から特定のインターフェイスを削除する必要があることを示します。

この最初の例は、実装から直接派生する場合 に適用されます

struct MyImplementation : implementation<MyImplementation, IFrameworkViewSource, cloaked<IStringable>>
{
    ...
};

次の例は、ランタイム クラスを作成する場合の例です。

struct BookSku : BookSkuT<BookSku, cloaked<IStringable>>
{
    ...
};

要件

サポートされている最小 SDK:Windows SDK バージョン 10.0.17134.0 (Windows 10 バージョン 1803)

名前空間: winrt

ヘッダー: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (既定で含まれます)

こちらもご覧ください