winrt::weak_ref 结构模板 (C++/WinRT)

表示 对 C++/WinRT 对象或接口的弱引用的类型。 详细信息以及代码示例,请参阅 C++/WinRT 中的强引用和弱引用

语法

template <typename T>
struct weak_ref

模板参数

typename T C++/WinRT 对象或接口的类型是 weak_ref 对象所表示的弱引用。 这是弱引用目标的类型。

要求

支持的最低 SDK:Windows SDK 版本 10.0.17134.0 (Windows 10版本 1803)

命名空间: winrt

标头: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (默认包含)

构造函数

构造函数 说明
weak_ref::weak_ref 构造函数 使用输入数据的副本(可选)初始化 weak_ref 结构的新实例。

成员函数

函数 说明
weak_ref::get 函数 递增引用计数,并检索 weak_ref 对象弱引用的 C++/WinRT 对象或接口。 确定是否可以将 weak_ref 解析为强引用的方法是调用 get 和 try。

成员运算符

运算符 说明
weak_ref::operator bool 检查 weak_ref 对象是否拥有弱引用或 nullptr弱引用。 确定是否可以将 weak_ref 解析为强引用的方法是调用 weak_ref::get 和 try。

weak_ref::weak_ref 构造函数

使用输入数据的副本(可选)初始化 weak_ref 结构的新实例。

语法

weak_ref(std::nullptr_t = nullptr) noexcept;
weak_ref(T const& object);
weak_ref(com_ptr<T> const& object);

parameters

object 一个 C++/WinRT 对象或接口或智能指针,用于初始化 weak_ref 对象。

weak_ref::get 函数

递增引用计数,并检索 weak_ref 对象弱引用的 C++/WinRT 对象或接口。 确定是否可以将 weak_ref 解析为强引用的方法是调用 get 和 try。

语法

auto get() const noexcept;

返回值

weak_ref对象弱引用的 C++/WinRT 对象或接口,或者nullptr弱引用的目标已被销毁。

weak_ref::operator bool

检查 weak_ref 对象是否拥有弱引用或 nullptr弱引用。 确定是否可以将 weak_ref 解析为强引用的方法是调用 weak_ref::get 和 try。

语法

explicit operator bool() const noexcept;

返回值

true if the weak_ref object owns a weak reference; false if the weak_ref object owns a nullptr.

另请参阅