std::unique_ptr<T,Deleter>::operator bool
来自 cppreference.cn
< cpp | 内存 | unique ptr
explicit operator bool() const noexcept; |
(始于 C++11) (constexpr 始于 C++23) |
|
检查 *this 是否拥有对象,即 get() !=
nullptr 是否成立。
目录 |
[编辑] 参数
(无)
[编辑] 返回值
true 如果 *this 拥有对象,则为 true,否则为 false。
[编辑] 示例
运行此代码
#include <iostream> #include <memory> int main() { std::unique_ptr<int> ptr(new int(42)); if (ptr) std::cout << "before reset, ptr is: " << *ptr << '\n'; ptr.reset(); (ptr ? (std::cout << "after reset, ptr is: " << *ptr) : (std::cout << "after reset ptr is empty")) << '\n'; }
输出
before reset, ptr is: 42 after reset ptr is empty
[编辑] 参见
返回指向被管理对象的指针 (公共成员函数) |