Udostępnij za pośrednictwem


basic_streambuf Class

W tym artykule opisano abstrakcyjna klasa podstawowa dla buforu strumienia, który kontroluje przenoszenia elementów z określonych reprezentacja strumienia i wyprowadzania.

template<class Elem, class Tr = char_traits<Elem> >
   class basic_streambuf;

Parametry

Uwagi

Klasa szablonu opisuje abstrakcyjna klasa podstawowa dla buforu strumienia, który kontroluje przenoszenia elementów z określonych reprezentacja strumienia i wyprowadzania.Obiekt klasy basic_streambuf ułatwia kontrolowanie strumienia z elementami typu Tr, znany również jako char_type, których cechy znaków są określane przez klasę char_traits, znany również jako traits_type.

Bufor każdego strumienia koncepcyjnie kontroluje dwa niezależne strumienie: jeden dla ekstrakcji (wejście) i jeden dla wstawienia (wyjście).Przedstawienie szczególnych jednak dokonać jednej lub obu tych strumieni niedostępne.Zazwyczaj utrzymuje niektóre relacji między dwa strumienie.Wstawianie do strumienia wyjściowego basic_stringbuf<Elem, Tr> obiekt, jest na przykład, co później wyodrębniony z jego strumienia wejściowego.Kiedy umieść jeden strumień basic_filebuf<Elem, Tr> obiekt, ustaw inne strumienia zespołowo.

Interfejs publiczny do szablonu klasy basic_streambuf dostarcza operacje, które są wspólne dla wszystkich buforach strumienia, jednak wyspecjalizowane.Interfejs chronionych dostaw potrzebnych dla szczególnych reprezentacja strumienia do wykonania swojej pracy operacji.Funkcje chroniony członek wirtualne umożliwiają dostosowywanie zachowania buforu pochodnych strumienia określonego reprezentacji strumienia.Bufor każdego strumienia pochodnych w tej bibliotece opisano, jak się zachowanie funkcji chroniony członek wirtualnych.Domyślne zachowanie klasy podstawowej jest często nie rób nic, jest opisana w tym temacie.

Pozostałe chronione kontroli funkcji Kopiowanie do i z dowolnego magazynu do buforu transmisji do i ze strumieni.Bufor wejściowy, na przykład charakteryzuje się:

  • eback, wskaźnik na początek buforu.

  • gptr, wskaźnik do następnego elementu do odczytu.

  • egptr, wskaźnik tylko w przeszłości do końca buforu.

Podobnie bufor wyjściowy jest określony przez:

  • pbase, wskaźnik na początek buforu.

  • pptr, wskaźnik do następnego elementu do zapisu.

  • epptr, wskaźnik tylko w przeszłości do końca buforu.

Wszelkie buforu służy następującym protokołem:

  • Jeśli wskaźnik dalej jest null, bufor nie istnieje.W przeciwnym wypadku wszystkie trzy wskaźniki punktu w tej samej kolejności.Może być bezpiecznie porównaniu dla zamówienia.

  • Na bufor wyjściowy Jeśli wskaźnik dalej porównuje się mniej niż wskaźnik celu można przechowywać elementu wyznaczonego przez wskaźnik następnej pozycji zapisu.

  • Dla buforu wejściowego Jeśli wskaźnik dalej porównuje się mniej niż wskaźnik celu można odczytać elementu w miejscu odczytu wyznaczone przez wskaźnik dalej.

  • Dla buforu wejściowego wskaźnik początku porównuje się mniej niż wskaźnik dalej, można umieocić back elementu w pozycji putback, wyznaczone przez wskaźnik dalej zmniejszany.

Chronione dowolnego członka wirtualnego funkcje zapisu dla Klasa pochodna od basic_streambuf<Elem, Tr> muszą współpracować w utrzymaniu tego protokołu.

An object of class basic_streambuf<Elem, Tr> przechowuje sześciu wskaźniki, które zostało wcześniej opisane.Również przechowuje obiekt ustawień regionalnych w obiekt typu locale dla potencjalnych używany przez bufor pochodnych strumienia.

9h24a8cd.collapse_all(pl-pl,VS.110).gifKonstruktory

basic_streambuf

Tworzy obiekt typu basic_streambuf.

9h24a8cd.collapse_all(pl-pl,VS.110).gifDefinicje TypeDef

char_type

Kojarzy nazwę typu z Elem parametr szablonu.

int_type

Kojarzy nazwę typu w basic_streambuf zakres z Elem parametr szablonu.

off_type

Kojarzy nazwę typu w basic_streambuf zakres z Elem parametr szablonu.

pos_type

Kojarzy nazwę typu w basic_streambuf zakres z Elem parametr szablonu.

traits_type

Kojarzy nazwę typu z Tr parametr szablonu.

9h24a8cd.collapse_all(pl-pl,VS.110).gifFunkcje składowe

eback

Chronione funkcja zwraca wskaźnik na początek buforu wejściowego.

egptr

Chronione funkcja zwraca wskaźnik tylko poza koniec buforu wejściowego.

epptr

Chronione funkcja zwraca wskaźnik tylko poza koniec buforu wyjściowego.

gbump

Funkcja chronionych, która dodaje _Count do następnego wskaźnika dla buforu wejściowego.

getloc

Pobiera basic_streambuf obiektu ustawień regionalnych.

gptr

Chronione funkcja zwraca wskaźnik do następnego elementu buforu wejściowego.

nadać

A chroniony przez funkcję pubimbue.

in_avail

Zwraca liczbę elementów, które są gotowe do buforu odczytu.

przepełnienie

Chronione funkcję wirtualną można wywołać, po wstawieniu nowego znaku do pełnego buforu.

pbackfail

Funkcji chroniony członek wirtualnego, która próbuje ponownie umieszczona element w strumieniu wejściowym, należy go bieżącego elementu (wskazywanej przez wskaźnik dalej).

pbase

Chronione funkcja zwraca wskaźnik na początek buforu wyjściowego.

pbump

Funkcja chronionych, która dodaje count do następnego wskaźnik do bufora wyjściowego.

pptr

Chronione funkcja zwraca wskaźnik do następnego elementu buforu wyjściowego.

pubimbue

Zestawy basic_streambuf obiektu ustawień regionalnych.

pubseekoff

Wywołania seekoff, chronione funkcję wirtualną, który jest zastąpiony w klasie pochodnej.

pubseekpos

Wywołania seekpos, chronione wirtualnego funkcji, która zostanie zastąpione w klasie pochodnej i resetuje bieżącą pozycję wskaźnika.

pubsetbuf

Wywołania setbuf, chronione funkcję wirtualną, który jest zastąpiony w klasie pochodnej.

pubsync

Wywołania synchronizacji, chronione funkcję wirtualną, który jest zastąpiony w klasie pochodnej i aktualizuje zewnętrznego strumienia skojarzonych z tym buforze.

sbumpc

Odczytuje i zwraca bieżący element, przesuwając wskaźnik strumienia.

seekoff

Funkcja chroniony członek wirtualnego próbuje zmienić dla bieżącej pozycji kontrolowanych strumieni.

seekpos

Funkcja chroniony członek wirtualnego próbuje zmienić dla bieżącej pozycji kontrolowanych strumieni.

setbuf

Funkcja chroniony członek wirtualnego wykonuje szczególności operacji do każdego strumienia pochodnych buforu.

setg

Chronione funkcji, która przechowuje _Gbeg w wskaźnik początek _Gnext w następnym wskaźnik i _Gend w wskaźnik celu buforu wejściowego.

setp

Chronione funkcji, która przechowuje _Pbeg w wskaźnik początku i _Pend w wskaźnik celu buforu wyjściowego.

sgetc

Zwraca bieżący element bez zmiany pozycji w strumieniu.

sgetn

Zwraca liczbę elementów odczytu.

showmanyc

Chroniony członek wirtualny funkcja, która zwraca liczbę liczbę znaków, które ekstrahuje się ze strumienia wejściowego i zapewnienia, że program nie podlega nieokreślony oczekiwania.

snextc

Odczytuje bieżącego elementu i zwraca następujący element.

sputbackc

Umieszcza char_type w strumieniu.

sputc

Umieszcza znak w strumieniu.

sputn

Przełącza ciąg znaków w strumieniu.

stossc

Przechodzić bieżący element w strumieniu.

sungetc

Pobiera znak ze strumienia.

Zamień

Wymienia wartości w tym obiekcie dla wartości w dołączonym basic_streambuf parametr obiektu.

Synchronizacja

Chronione funkcję wirtualną próbuje zsynchronizować kontrolowanych strumieni wszelkie skojarzone strumieni zewnętrznych.

uflow

Chronione funkcję wirtualną wyodrębnia bieżącego elementu ze strumienia wejściowego.

niedomiar

Chronione funkcję wirtualną wyodrębnia bieżącego elementu ze strumienia wejściowego.

xsgetn

Chronione funkcję wirtualną wyodrębnia elementy ze strumienia wejściowego.

xsputn

Chronione funkcję wirtualną Wstawia elementy do strumienia wyjściowego.

9h24a8cd.collapse_all(pl-pl,VS.110).gifOperatory

operator =

Przypisuje wartości tego obiektu z innego basic_streambuf obiektu.

Wymagania

Nagłówek: <streambuf>

Obszar nazw: std

Zobacz też

Informacje

Bezpieczeństwo wątków w standardowa biblioteka języka C++

iostream Programowanie

iostreams Konwencji

Inne zasoby

basic_streambuf członkowie

<streambuf> Członkowie