std::unique_ptr<T,Deleter>::operator bool
来自cppreference.com
<tbody>
</tbody>
explicit operator bool() const noexcept; |
(C++11 起) (constexpr since C++23) |
|
检查 *this 是否占有对象,即是否有 get() != nullptr。
参数
(无)
返回值
若 *this 占有对象则为 true,否则为 false。
示例
运行此代码
#include <iostream>
#include <memory>
int main()
{
std::unique_ptr<int> ptr(new int(42));
if (ptr)
std::cout << "重置前,ptr 为: " << *ptr << '\n';
ptr.reset();
(ptr ? (std::cout << "重置后,ptr 为: " << *ptr)
: (std::cout << "重置后 ptr 为空")) << '\n';
}
输出:
重置前,ptr 为: 42
重置后 ptr 为空
参阅
| 返回指向被管理对象的指针 (公开成员函数) |