basic_ostream::operator<<
Выполняет запись в поток.
basic_ostream<_Elem, _Tr>& operator<<(
basic_ostream<_Elem, _Tr>& (*_Pfn)(basic_ostream<_Elem, _Tr>&)
);
basic_ostream<_Elem, _Tr>& operator<<(
ios_base& (*_Pfn)(ios_base&)
);
basic_ostream<_Elem, _Tr>& operator<<(
basic_ios<_Elem, _Tr>& (*_Pfn)(basic_ios<_Elem, _Tr>&)
);
basic_ostream<_Elem, _Tr>& operator<<(
basic_streambuf<_Elem, _Tr> *_Strbuf
);
basic_ostream<_Elem, _Tr>& operator<<(
bool _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
short _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
unsigned short _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
int __w64 _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
unsigned int __w64 _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
long _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
unsigned long __w64 _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
long long _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
unsigned long long _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
float _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
double _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
long double _Val
);
basic_ostream<_Elem, _Tr>& operator<<(
const void *_Val
);
Параметры
_Pfn
Указатель функции._Strbuf
Указатель на объект stream_buf._Val
Элемент, который требуется записать в поток.
Возвращаемое значение
Ссылка на объект basic_ostream.
Заметки
Заголовок <ostream> также определяет несколько общих операторов insert.Дополнительные сведения см. в разделе operator<< (<ostream>).
Первый функцию-член гарантирует, что выражение формы ostr << endl вызывает endl(ostr), а затем возвращает *this.Второе и третье гарантирует, что другие функции, такие как hex манипуляторы, функционируют аналогично.Все остальные функции форматированные выходные данные функции.
Функция
basic_ostream<_Elem, _Tr>& operator<<(basic_streambuf<Elem, Tr> *_Strbuf);
извлекает элементы из _Strbuf, если не _Strbuf указателя null и вставляет их.Извлечение останавливается в конце файла или если извлечение вызывает исключение вызывается заново (,).Он также останавливается без извлечения элемента в вопросе, если операция вставки завершится ошибкой.Если функция не вставляет элементы, если извлечение или создает исключение, то вызовы функций setstate(failbit).В любом случае функция возвращает *this.
Функция
basic_ostream<_Elem, _Tr>& operator<<(bool _Val);
_Val новообращенных в логическое поле и вставкам его путем вызова use_facet<num_put<Elem, OutIt>(getloc).поместите(OutIt(rdbuf), *this, getloc, val).Здесь OutIt определено как ostreambuf_iterator<Elem, Tr>.Функция возвращает *this.
Функции
basic_ostream<_Elem, _Tr>& operator<<(short _Val);
basic_ostream<_Elem, _Tr>& operator<<(unsigned short _Val);
basic_ostream<_Elem, _Tr>& operator<<(int _Val);
basic_ostream<_Elem, _Tr>& operator<<(unsigned int __w64 _Val);
basic_ostream<_Elem, _Tr>& operator<<(long _Val);
basic_ostream<_Elem, _Tr>& operator<<(unsigned long _Val);
basic_ostream<_Elem, _Tr>& operator<<(long long _Val);
basic_ostream<_Elem, _Tr>& operator<<(unsigned long long _Val);
basic_ostream<_Elem, _Tr>& operator<<(const void *_Val);
каждый _Val преобразовать в числовые поля и вставляет его путем вызова use_facet<num_put<Elem, OutIt>(getloc). put(OutIt(rdbuf), *this, getloc, val).Здесь OutIt определено как ostreambuf_iterator<Elem, Tr>.Функция возвращает *this.
Функции
basic_ostream<_Elem, _Tr>& operator<<(float _Val);
basic_ostream<_Elem, _Tr>& operator<<(double _Val);
basic_ostream<_Elem, _Tr>& operator<<(long double _Val);
каждое _Val convert с числовым полем и вставляет его путем вызова use_facet<num_put<Elem, OutIt>(getloc). put(OutIt(rdbuf), *this, getloc, val).Здесь OutIt определено как ostreambuf_iterator<Elem, Tr>.Функция возвращает *this.
Пример
// basic_ostream_op_write.cpp
// compile with: /EHsc
#include <iostream>
#include <string.h>
using namespace std;
ios_base& hex2( ios_base& ib )
{
ib.unsetf( ios_base::dec );
ib.setf( ios_base::hex );
return ib;
}
basic_ostream<char, char_traits<char> >& somefunc(basic_ostream<char, char_traits<char> > &i)
{
if ( i == cout )
{
i << "i is cout" << endl;
}
return i;
}
class CTxtStreambuf : public basic_streambuf< char, char_traits< char > >
{
public:
CTxtStreambuf(char *_pszText)
{
pszText = _pszText;
setg(pszText, pszText, pszText+strlen(pszText));
};
char *pszText;
};
int main( )
{
cout << somefunc;
cout << 21 << endl;
hex2(cout);
cout << 21 << endl;
CTxtStreambuf f("text in streambuf");
cout << &f << endl;
}
Output
i is cout
21
15
text in streambuf
Требования
заголовок: <ostream>
std пространство имен: