次の方法で共有


winrt::get_activation_factory 関数テンプレート (C++/WinRT)

指定したWindows ランタイム クラス型のアクティブ化ファクトリを取得するヘルパー関数。

構文

template <typename Class, typename Interface = winrt::Windows::Foundation::IActivationFactory>
auto get_activation_factory();

テンプレート パラメーター

typename Classアクティブ化ファクトリを取得するWindows ランタイムクラス型。

typename Interface アクティブ化ファクトリによって実装されるインターフェイス。

戻り値

指定したWindows ランタイム クラス型のアクティブ化ファクトリの指定されたインターフェイスへの参照。

auto factory = winrt::get_activation_factory<BankAccountWRC::BankAccount>();
BankAccountWRC::BankAccount account = factory.ActivateInstance<BankAccountWRC::BankAccount>();
using namespace winrt::Windows::Foundation;
...
auto factory = winrt::get_activation_factory<Uri, IUriRuntimeClassFactory>();
Uri account = factory.CreateUri(L"https://www.contoso.com");
using namespace winrt::Windows::Globalization::NumberFormatting;
...
auto factory = winrt::get_activation_factory<CurrencyFormatter, ICurrencyFormatterFactory>();
CurrencyFormatter currency = factory.CreateCurrencyFormatterCode(L"USD");

必要条件

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

名前空間: winrt

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

こちらもご覧ください