Skip to main content

std::shared_ptr<T>::operator<<

Declarations

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

Inserts the value of the pointer stored in ptr into the output stream os.

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

#include <iostream>
#include <memory>

class Foo {};

int main()
{
auto sp = std::make_shared<Foo>();
std::cout << sp << '\n';
std::cout << sp.get() << '\n';
}
Result
0x6d9028
0x6d9028

std::shared_ptr<T>::operator<<

Declarations

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

Inserts the value of the pointer stored in ptr into the output stream os.

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

#include <iostream>
#include <memory>

class Foo {};

int main()
{
auto sp = std::make_shared<Foo>();
std::cout << sp << '\n';
std::cout << sp.get() << '\n';
}
Result
0x6d9028
0x6d9028