To jest stara wersja strony!
Strumienie są abstrakcyjnym pojęciem reprezentującym przestrzeń, na której wykonywawane są operacje wejścia i wejścia. Dokładniej, strumień reprezentuje źródło (bądź przeznaczenie) pewnego ciągu znaków o nieokreślonej długości.
Strumienie są zwykle powiązywane z określonym, fizycznym źródłem (bądź przeznaczeniem) ciągu znaków, jak np. plik na dysku, klawiatura czy konsola. Wynika stąd, że operacje na strumieniach są po prostu operacjami wejścia/wyjścia na wymienionych wyżej „fizycznych” urządzeń bądź programów.
Do zarządzania strumieniami w C++ wykorzystuje się standardową bibliotekę iostream
.
Klasa iostream
dziedziczy po klasach istream
(jej egzemplarzem, standardowo zdefiniowanym, jest strumień wejścia cin
) i ostream
(strumień wyjścia cout
), które z kolei dziedziczą po klasie ios
. Klasa ios
dziedziczy po klasie basic_os
, dla której klasą bazową jest natomiast ios_base
;
Poniżej został przedstawiony opis klas, po których dziedziczy klasa iostream
. Opis nie ma być kopią dokumentacji - jest stworzony, żeby po to, żeby przedstawić funkcjonalność związaną z wykorzystaniem elementów oraz funkcji składowych klas bazowych dla iostream
.
ios_base (Input Output State) jest podstawową klasą bazową dla pojęcia strumienia i operacji z nim związnych. Dostarcza pojęcie flagi stanu formatowania, a także narzędzi do jego wykorzystania.
ios_base::enum iostate //typ wyliczeniowy odpowiadający za kategorie błędów stanu strumienia ios_base::skipws //flagi stanów formatowania ios_base::left ios_base::right ios_base::internal ios_base::boolalpha ios_base::dec ios_base::oct ios_base::hex ios_base::showbase ios_base::showpoint ios_base::uppercase ios_base::showpos ios_base::scientific ios_base::fixed ios_base::unitbuf ios_base::adjustfield ////maski (pola) ios_base::basefield ios_base::floatfield
ios_base::ftmflags setf(fmtflags flaga) ios_base::fmtflags setf(ftmflags flaga, fmtflags nazwa_pola) ios_base::ftmflags unsetf(fmtflags flaga) ios_base::ftmflags flags(fmtflags flaga) ios_base::ftmflags flags() ios_base::streamsize width() const; ios_base::width(streamsize()); ios_base::precision() const; ios_base::precision(streamsize); ios_base::io_state rdstate() ios_base::void clear(io_state = ios::goodbit) ios_base::void setstate(io_state stan)