# std::shared_ptr::operator<<

From cppreference.com
< cpp‎ | memory‎ | shared ptr

template <class T, class U, class V> basic_ostream<U, V>& operator<<(basic_ostream<U, V>& os, const shared_ptr<T>& ptr); |  |

Inserts a `shared_ptr<T>` into a std::basic_ostream.

Equivalent to `os << ptr.get()`.

### Parameters

os | - | a std::basic_ostream to insert `ptr` into
ptr | - | the data to be inserted into `os`

### Return value

`os`

### Example

Run this code

    #include <iostream>
    #include <memory>

    class Foo {};

    int main()
    {
        auto sp = std::make_shared<Foo>();
        std::cout << sp << std::endl;
        std::cout << sp.get() << std::endl;
    }

Possible output:

    0x6d9028
    0x6d9028

### See also

get | returns the stored pointer (public member function)

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/memory/shared_ptr/operator_ltlt&oldid=58400"