Funzione winrt::copy_from_abi (C++/WinRT)

Funzione helper che copia in un oggetto C++/WinRT da un handle o da un puntatore non elaborato. Cancella l'oggetto C++/WinRT o decrementa il conteggio dei riferimenti su qualsiasi interfaccia a cui si fa riferimento, copia il parametro e inizia a gestire l'handle o l'interfaccia a cui punta (che include l'incremento di qualsiasi conteggio dei riferimenti sul parametro). Per altre info ed esempi di codice, vedi Interoperabilità tra C++/WinRT e ABI.

Sintassi

template <typename T, typename V, typename =
std::enable_if_t<!std::is_base_of_v<winrt::Windows::Foundation::IUnknown, T>>>
void copy_from_abi(T& object, V&& value);

void copy_from_abi(winrt::hstring& object, void* value);

void copy_from_abi(winrt::Windows::Foundation::IUnknown& object, void* value) noexcept;

Parametri

object Oggetto C++/WinRT su cui operare.

value Handle o puntatore non elaborato a una destinazione la cui durata deve essere gestita dall'oggetto C++/WinRT. Nel caso dell'overload IUnknown&, void* , la funzione chiama AddRef sul valore .

Requisiti

SDK minimo supportato: Windows SDK versione 10.0.17134.0 (Windows 10, versione 1803)

Spazio dei nomi: winrt

Intestazione: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (incluso per impostazione predefinita)

Vedi anche