istreambuf_iterator::istreambuf_iterator
Konstrukce istreambuf_iterator, který je inicializován na čtení znaků z vstupního datového proudu.
istreambuf_iterator(
streambuf_type* _Strbuf = 0
) throw( );
istreambuf_iterator(
istream_type& _Istr
) throw( );
Parametry
_Strbuf
Vyrovnávací paměť vstupní proud do kterého istreambuf_iterator je připojeno._Istr
Vstupní datový proud, na který istreambuf_iterator je připojeno.
Poznámky
První konstruktor inicializuje ukazatel vstupní vyrovnávací paměti datového proudu s _Strbuf.Druhý konstruktor inicializuje ukazatel vstupní vyrovnávací paměti datového proudu s _Istr.rdbufa nakonec pokusí extrahovat a uložit objekt typu CharType.
Příklad
// istreambuf_iterator_istreambuf_iterator.cpp
// compile with: /EHsc
#include <iterator>
#include <vector>
#include <algorithm>
#include <iostream>
int main( )
{
using namespace std;
// Following declarations will not compile:
istreambuf_iterator<char>::istream_type &istrm = cin;
istreambuf_iterator<char>::streambuf_type *strmbf = cin.rdbuf( );
cout << "(Try the example: 'Oh what a world!'\n"
<< " then an Enter key to insert into the output,\n"
<< " & use a ctrl-Z Enter key combination to exit): ";
istreambuf_iterator<char> charReadIn ( cin );
ostreambuf_iterator<char> charOut ( cout );
// Used in conjunction with replace_copy algorithm
// to insert into output stream and replace spaces
// with hyphen-separators
replace_copy ( charReadIn , istreambuf_iterator<char>( ),
charOut , ' ' , '-' );
}
O jaké world!
Oh what a world! (Zkuste příklad: "Oh co world!" Klepněte klávesy Enter vložte do výstupu, &použít kombinaci kláves ctrl + Z Enter ukončete): O jaké světa! O co-world! ^ Z
Požadavky
Hlavička: <iterátor>
Obor názvů: std