|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 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 operatorbool()constnoexcept; | (since C++11) (constexpr since C++23) | |
Checks whether*this owns an object, i.e. whetherget()!=nullptr.
Contents |
(none)
true if*this owns an object,false otherwise.
#include <iostream>#include <memory> int main(){std::unique_ptr<int> ptr(newint(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: 42after reset ptr is empty
| returns a pointer to the managed object (public member function)[edit] |