std::ostreambuf_iterator
| Definiert in Header <iterator> |
||
| template< class CharT, class Traits = std::char_traits<CharT> > class ostreambuf_iterator |
(bis C++17) | |
| template< class CharT, class Traits = std::char_traits<CharT> > class ostreambuf_iterator; |
(seit C++17) | |
std::ostreambuf_iterator ist ein Einpass-LegacyOutputIterator, der aufeinanderfolgende Zeichen in das std::basic_streambuf-Objekt schreibt, für das er konstruiert wurde. Die eigentliche Schreiboperation wird durchgeführt, wenn der Iterator (egal ob dereferenziert oder nicht) zugewiesen wird. Das Inkrementieren des std::ostreambuf_iterator ist eine No-Op.
In einer typischen Implementierung sind die einzigen Datenmember von std::ostreambuf_iterator ein Zeiger auf den zugehörigen std::basic_streambuf und ein boolesches Flag, das angibt, ob die End-of-File-Bedingung erreicht wurde.
Inhalt |
[bearbeiten] Member-Typen
| Mitgliedertyp | Definition | ||||
iterator_category
|
std::output_iterator_tag | ||||
value_type
|
void | ||||
difference_type
|
| ||||
Zeiger
|
void | ||||
Referenz
|
void | ||||
char_type
|
CharT
| ||||
traits_type
|
Traits
| ||||
streambuf_type
|
std::basic_streambuf<CharT, Traits> | ||||
ostream_type
|
std::basic_ostream<CharT, Traits> |
|
Die Member-Typen |
(bis C++17) |
[edit] Memberfunktionen
konstruiert einen neuen ostreambuf_iterator(public member function) | |
| (Destruktor) (implizit deklariert) |
destruiert einen ostreambuf_iterator(public member function) |
| schreibt ein Zeichen in die zugeordnete Ausgabesequenz (public member function) | |
| no-op (public member function) | |
| no-op (public member function) | |
| prüft, ob die Ausgabe fehlgeschlagen ist (public member function) |
[edit] Beispiel
#include <algorithm> #include <iostream> #include <iterator> #include <string> int main() { std::string s = "This is an example\n"; std::copy(s.begin(), s.end(), std::ostreambuf_iterator<char>(std::cout)); }
Ausgabe
This is an example
[edit] Siehe auch
| Eingabe-Iterator, der aus std::basic_streambuf liest (Klassenvorlage) | |
| Ausgabe-Iterator, der in std::basic_ostream schreibt (Klassenvorlage) |