|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Modifiers | ||||
| Observers | ||||
unique_ptr::get | ||||
| Non-member functions | ||||
(C++14)(C++20) | ||||
(until C++20)(C++20) | ||||
(C++20) | ||||
| Helper classes | ||||
pointer get()constnoexcept; | (since C++11) (constexpr since C++23) | |
Returns a pointer to the managed object ornullptr if no object is owned.
Contents |
(none)
Pointer to the managed object ornullptr if no object is owned.
#include <iomanip>#include <iostream>#include <memory>#include <string>#include <utility> class Res{std::string s; public: Res(std::string arg): s{std::move(arg)}{std::cout<<"Res::Res("<<std::quoted(s)<<");\n";} ~Res(){std::cout<<"Res::~Res();\n";} private:friendstd::ostream& operator<<(std::ostream& os, Resconst& r){return os<<"Res { s = "<<std::quoted(r.s)<<"; }";}}; int main(){std::unique_ptr<Res> up(new Res{"Hello, world!"}); Res* res= up.get();std::cout<<*res<<'\n';}
Output:
Res::Res("Hello, world!");Res { s = "Hello, world!"; }Res::~Res();| returns a pointer to the managed object and releases the ownership (public member function)[edit] |