basic_ostream::operator<<
Écrit dans le flux.
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
);
Paramètres
_Pfn
Pointeur fonction._Strbuf
Un pointeur vers un objet de stream_buf ._Val
Un élément pour écrire dans le flux.
Valeur de retour
Une référence à l'objet de basic_ostream.
Notes
l'en-tête d' <ostream> définit également plusieurs opérateurs d'insertion globaux.Pour plus d'informations, consultez operator<< (<ostream>).
La première fonction membre garantit qu'une expression de formulaire ostr << endl appelle endl(ostr), puis retourne *this.Les deuxième et troisième fonctions garantissent que d'autres manipulateurs, tels que hexa, se comportent de la même façon.Les fonctions restantes sont toutes les fonctions de sortie mise en forme.
La fonction
basic_ostream<_Elem, _Tr>& operator<<(basic_streambuf<Elem, Tr> *_Strbuf);
récupère les éléments d' _Strbuf, si _Strbuf n'est pas un pointeur null, et les insère.L'extraction s'arrête au niveau de fin de fichier, ou si une récupération lève une exception (qui est à nouveau levée).Elle s'arrête également, sans extraire l'élément en question, si une implémentation échoue.Si la fonction n'insère un élément, ou si une récupération lève une exception, la fonction appelle setstate(failbit).Dans tous les cas, la fonction retourne *this.
La fonction
basic_ostream<_Elem, _Tr>& operator<<(bool _Val);
_Val de convertis en un champ booléen et aux insertions il en appelant use_facet<num_put<Elem, OutIt>(getloc).mettez(OutIt(rdbuf), *this, getloc, val).Ici, OutIt est défini comme ostreambuf_iterator<Elem, Tr>.La fonction retourne *this.
Les fonctions
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);
chaque converti _Val à un champ numérique et insertion en appelant use_facet<num_put<Elem, OutIt>(getloc). put(OutIt(rdbuf), *this, getloc, val).Ici, OutIt est défini comme ostreambuf_iterator<Elem, Tr>.La fonction retourne *this.
Les fonctions
basic_ostream<_Elem, _Tr>& operator<<(float _Val);
basic_ostream<_Elem, _Tr>& operator<<(double _Val);
basic_ostream<_Elem, _Tr>& operator<<(long double _Val);
chaque _Val de converti en un champ numérique et insertion en appelant use_facet<num_put<Elem, OutIt>(getloc). put(OutIt(rdbuf), *this, getloc, val).Ici, OutIt est défini comme ostreambuf_iterator<Elem, Tr>.La fonction retourne *this.
Exemple
// 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;
}
Sortie
i is cout
21
15
text in streambuf
Configuration requise
en-tête : <ostream>
l'espace de noms : DST