Funzione winrt::copy_to_abi (C++/WinRT)
Funzione helper che copia in un handle o in un puntatore da un oggetto C++/WinRT . Incrementa il conteggio dei riferimenti su qualsiasi interfaccia a cui si fa riferimento e copia l'indirizzo di memoria dell'interfaccia nel parametro (incrementando qualsiasi conteggio dei riferimenti sul parametro). Questa funzione consente di distribuire un riferimento alla stessa interfaccia senza chiamare QueryInterface. 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_to_abi(T const& object, V& value);
void copy_to_abi(hstring const& object, void*& value);
void copy_to_abi(winrt::Windows::Foundation::IUnknown const& object, void*& value) noexcept;
Parametri
object
Oggetto C++/WinRT su cui operare.
value
Riferimento handle o riferimento puntatore non elaborato; tramite cui copiare il puntatore nell'handle o nella destinazione dell'oggetto C++/WinRT. Nel caso dell'overload IUnknown const&, 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)