std::unique_ptr<T,Deleter>::operator bool
From cppreference.com
< cpp | memory | unique ptr
C++
Memory management library
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::unique_ptr
| Member functions | ||||
| Modifiers | ||||
| Observers | ||||
unique_ptr::operator bool | ||||
| Non-member functions | ||||
(C++14)(C++20) | ||||
(until C++20)(C++20) | ||||
(C++20) | ||||
| Helper classes | ||||
| explicit operator bool() const noexcept; |
(since C++11) (constexpr since C++23) |
|
Checks whether *this owns an object, i.e. whether get() != nullptr.
Contents |
[edit] Parameters
(none)
[edit] Return value
true if *this owns an object, false otherwise.
[edit] Example
Run this code
#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'; }
Output:
before reset, ptr is: 42 after reset ptr is empty
[edit] See also
| returns a pointer to the managed object (public member function) [edit] |