std::unique_ptr::operator*
From cppreference.com
                    
                                        
                    < cpp | memory | unique ptr
                    
                                                            
                    |   typename std::add_lvalue_reference<T>::type operator*() const;  | 
(1) | (since C++11) | 
|   pointer operator->() const;  | 
(2) | (since C++11) | 
operator* and operator-> provide access to the object owned by *this.
Contents | 
[edit] Parameters
(none)
[edit] Return value
1) Returns the object owned by *this, i.e. *get().
2) Returns a pointer to the object owned by *this, i.e. get().
[edit] Exceptions
1) may throw
2)[edit] Example
#include <iostream> #include <memory> struct Foo { void bar() { std::cout << "Foo::bar\n"; } }; void f(const Foo& foo) { std::cout << "f(const Foo&)\n"; } int main() { std::unique_ptr<Foo> ptr(new Foo); ptr->bar(); f(*ptr); }
Output:
Foo::bar f(const Foo&)
[edit] See also
|    returns a pointer to the managed object   (public member function)  | |