std::unique_ptr<T,Deleter>::operator bool
来自cppreference.com
< cpp | memory | unique ptr
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 为空
参阅
返回指向被管理对象的指针 (公开成员函数) |