Język C++
basic_streambuf::uflow
[metoda] Odczytuje znaki z powiązanej sekwencji wejściowej do obszaru pobierania i zwiększa wartość następnego wskaźnika.Składnia
#include <streambuf>
namespace std
{
template < class CharT, class Traits = std::char_traits < CharT > >
class basic_streambuf
{
protected:
virtual int_type uflow();
};
}
Zwracana wartość
Funkcja zwraca wartość znaku wskazywanego przez wskaźnik odczytywania danych przed zmianą pozycji tego wskaźnika (wartość jest rzutowana na typ
int_type
przez wywołanie
Traits::to_int_type( c )
). W przypadku błędu zwracaną wartością jest
Traits::eof()
. Wersja tej funkcji występująca w klasie bazowej zwraca wartość zwracaną przez funkcję
underflow()
.
Opis szczegółowy
Funkcja gwarantuje, że przynajmniej jeden znak jest dostępny w obszarze pobierania danych. Jeśli jest to potrzebne, funkcja może zaktualizować wartości wskaźników obszaru wczytywania danych. stan obszaru pobierania danych i odczytać większą ilość danych z sekwencji wejściowej, a także zaktualizować wartości wskaźników zwracanych przez funkcje
gptr()
,
egptr()
i
eback()
(aby określić położenie odczytanych danych). Wersja tej funkcji występująca w klasie bazowej wywołuje funkcję
underflow i inkrementuje wartość zwracaną przez wywołanie funkcji
gptr()
.
Dodatkowe informacje
Publiczne funkcje klasy
streambuf wywołują tą funkcję tylko, jeśli wyrażenie
( gptr() == nullptr ) ||( gptr() >= egptr() )
zwróci wartość
true
(funkcja gwarantuje to w przypadku błędu). Klasy strumieni, które nie używają obszaru pobierania danych i nie ustawiają wskaźników związanych z tym obszarem muszą przeciążać tą funkcję.
Zagadnienia powiązane
underflow | Odczytuje znaki z powiązanej sekwencji wejściowej do obszaru pobierania danych. (metoda) |
---|
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.