Función winrt::detach_abi (C++/WinRT)

Función auxiliar que desasocia un objeto de C++/WinRT de su identificador al que se hace referencia o de su interfaz a la que se hace referencia. La desasociación de una interfaz se realiza sin disminuir el recuento de referencias, quizás para devolverla a un autor de la llamada. Para obtener más información y ejemplos de código, consulta Interoperabilidad entre C++/WinRT y abi.

Sintaxis

template <typename T, typename =
std::enable_if_t<!std::is_base_of_v<winrt::Windows::Foundation::IUnknown, std::decay_t<T>>
&& !std::is_convertible_v<T, std::wstring_view>>>
auto detach_abi(T&& object);

inline void* detach_abi(winrt::Windows::Foundation::IUnknown& object) noexcept;

inline void* detach_abi(winrt::Windows::Foundation::IUnknown&& object) noexcept;

constexpr void* detach_abi(std::nullptr_t) noexcept;

template <typename T>
void* detach_abi(winrt::com_ptr<T>& object) noexcept;

inline void* detach_abi(winrt::hstring& object) noexcept;

inline void* detach_abi(winrt::hstring&& object) noexcept;

inline void* detach_abi(std::wstring_view const& value);

inline void* detach_abi(std::wchar_t const * const value);

template <typename T>
std::pair<uint32_t, void*> detach_abi(winrt::com_array<T>& object) noexcept;

template <typename T>
std::pair<uint32_t, void*> detach_abi(winrt::com_array<T>&& object) noexcept;

Parámetros

object Objeto de C++/WinRT en el que operar.

Valor devuelto

Identificador, o puntero a la interfaz sin formato, al que hace referencia el objeto C++/WinRT.

Requisitos

SDK mínimo admitido: Windows SDK versión 10.0.17134.0 (Windows 10, versión 1803)

Espacio de nombres: winrt

Encabezado: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (incluido de forma predeterminada)

Consulte también