std::unique_ptr<T,Deleter>::operator bool
来自 cppreference.com
< cpp | memory | unique ptr
explicit operator bool() const noexcept; |
(自 C++11 起) (自 C++23 起为 constexpr) |
|
检查 *this 是否拥有一个对象,即是否 get() !=
nullptr.
内容 |
[编辑] 参数
(无)
[编辑] 返回值
如果 *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
[编辑] 另请参阅
返回指向托管对象的指针 (公共成员函数) |