Export (0) Print
Expand All

operator<< (<ostream>) 

Writes various types to the stream.


template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      const Elem *_Str
      );
template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      Elem _Ch
      );
template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      const char *_Str
      );
template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<< (
      basic_ostream<Elem, _Tr>& _Ostr,
      char _Ch
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<< (
      basic_ostream<char, _Tr>& _Ostr,
      const char *_Str
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<< (
      basic_ostream<char, _Tr>& _ostr,
      char _Ch
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      const signed char *_Str
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      signed char _Ch
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      const unsigned char *_Str
      );
template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      unsigned char _Ch
      );

Parameters

_Ch

A character.

_Elem

The element type.

_Ostr

A basic_ostream object.

_Str

A character string.

_Tr

Character traits.

The stream.

The basic_ostream class also defines several insertion operators. For more information, see basic_ostream::operator<<.

The template function

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _ostr,
      const Elem *_Str);

determines the length N = traits_type::length(_Str) of the sequence beginning at _Str, and inserts the sequence. If N < _Ostr.width, then the function also inserts a repetition of _Ostr.width - N fill characters. The repetition precedes the sequence if (_Ostr.flags & adjustfield != left. Otherwise, the repetition follows the sequence. The function returns _Ostr.

Security Note   Use a null-terminated string. The null-terminated string must not exceed the size of the destination buffer. For more information, see Avoiding Buffer Overruns.

The template function

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      Elem _Ch);

inserts the element _Ch. If 1 < _Ostr.width, then the function also inserts a repetition of _Ostr.width - 1 fill characters. The repetition precedes the sequence if (_Ostr.flags & adjustfield != left. Otherwise, the repetition follows the sequence. It returns _Ostr.

The template function

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      const char *_Str);

behaves the same as

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      const Elem *_Str);

except that each element _Ch of the sequence beginning at _Str is converted to an object of type Elem by calling _Ostr.put(_Ostr. widen(_Ch)).

The template function

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      char _Ch);

behaves the same as

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      Elem _Ch);

except that _Ch is converted to an object of type Elem by calling _Ostr.put(_Ostr. widen(_Ch)).

The template function

template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      const char *_Str);

behaves the same as

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      const Elem *_Str);

(It does not have to widen the elements before inserting them.)

The template function

template<class _Tr>
   basic_ostream<char, Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      char _Ch);

behaves the same as

template<class _Elem, class _Tr>
   basic_ostream<Elem, _Tr>& operator<<(
      basic_ostream<Elem, _Tr>& _Ostr,
      Elem _Ch);

(It does not have to widen _Ch before inserting it.)

The template function

template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      const signed char *_Str);

returns _Ostr << (const char *)_Str.

The template function

template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      signed char _Ch);

returns _Ostr << (char)_Ch.

The template function:

template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      const unsigned char *_Str);

returns _Ostr << (const char *)_Str.

The template function:

template<class _Tr>
   basic_ostream<char, _Tr>& operator<<(
      basic_ostream<char, _Tr>& _Ostr,
      unsigned char _Ch);

returns _Ostr << (char)_Ch.

See flush for an example using operator<<.

Header: <ostream>

Community Additions

ADD
Show:
© 2014 Microsoft