HandleT 类
表示对象的句柄。
语法
template <typename HandleTraits>
class HandleT;
参数
HandleTraits
HandleTraits 结构的实例,用于定义句柄的常见特征。
成员
公共 Typedef
名称 | 描述 |
---|---|
Traits |
HandleTraits 的同义词。 |
公共构造函数
名称 | 描述 |
---|---|
HandleT::HandleT | 初始化 HandleT 类的新实例。 |
HandleT::~HandleT | 取消初始化 HandleT 类的实例。 |
公共方法
名称 | 描述 |
---|---|
HandleT::Attach | 将指定的句柄与当前 HandleT 对象相关联。 |
HandleT::Close | 关闭当前的 HandleT 对象。 |
HandleT::Detach | 将当前 HandleT 对象与其基础句柄取消关联。 |
HandleT::Get | 获取基础句柄的值。 |
HandleT::IsValid | 指示当前 HandleT 对象是否表示句柄。 |
受保护方法
名称 | 描述 |
---|---|
HandleT::InternalClose | 关闭当前的 HandleT 对象。 |
公共运算符
“属性” | 描述 |
---|---|
HandleT::operator= | 将指定 HandleT 对象的值移到当前 HandleT 对象。 |
受保护的数据成员
名称 | 描述 |
---|---|
HandleT::handle_ | 包含由 HandleT 对象表示的句柄。 |
继承层次结构
HandleT
要求
标头:corewrappers.h
命名空间:Microsoft::WRL::Wrappers
HandleT::~HandleT
取消初始化 HandleT
类的实例。
~HandleT();
HandleT::Attach
将指定的句柄与当前 HandleT
对象相关联。
void Attach(
typename HandleTraits::Type h
);
参数
h
句柄。
HandleT::Close
关闭当前的 HandleT
对象。
void Close();
备注
关闭基于当前 HandleT
的句柄,然后将 HandleT
设置为无效状态。
如果句柄关闭不正确,则调用线程中将引发异常。
HandleT::Detach
将当前 HandleT
对象与其基础句柄取消关联。
typename HandleTraits::Type Detach();
返回值
基础句柄。
备注
此操作完成后,当前 HandleT
状态设置为无效状态。
HandleT::Get
获取基础句柄的值。
typename HandleTraits::Type Get() const;
返回值
句柄。
HandleT::handle_
包含由 HandleT
对象表示的句柄。
typename HandleTraits::Type handle_;
HandleT::HandleT
初始化 HandleT
类的新实例。
explicit HandleT(
typename HandleTraits::Type h =
HandleTraits::GetInvalidValue()
);
HandleT(
_Inout_ HandleT&& h
);
参数
h
句柄。
备注
第一个构造函数初始化 HandleT
对象,该对象不是对象的有效句柄。 第二个构造函数从参数 h 创建新的 HandleT
对象。
HandleT::InternalClose
关闭当前的 HandleT
对象。
virtual bool InternalClose();
返回值
如果当前 true
关闭成功,则为 HandleT
;否则为 false
。
备注
InternalClose()
为 protected
。
HandleT::IsValid
指示当前 HandleT
对象是否表示句柄。
bool IsValid() const;
返回值
如果 HandleT
表示句柄,则为 true
;否则为 false
。
HandleT::operator=
将指定 HandleT
对象的值移到当前 HandleT
对象。
HandleT& operator=(
_Inout_ HandleT&& h
);
参数
h
对句柄的右值引用。
返回值
对当前 HandleT
对象的引用。
备注
此操作使参数 h 指定的 HandleT
对象失效。