protected virtual member function
<fstream>
Get character on overflow and advance position
Returns the character at the current input position, and advances the input position pointer.
Before that, this function attempts to read characters from the associated file and -if the object keeps an intermediate buffer- makes them available by altering the internal input buffer pointers (gptr, egptr and eback) as needed.
If there are no more characters available and the function did not succeed in reading more characters from the associated file, it returns the end-of-file value (EOF), indicating failure.
This virtual member function overrides the inherited member streambuf::uflow, called by members such as sbumpc to request a new character when there are no read positions available at the get pointer (gptr).
The behavior of this member function is similar to that of underflow, except that this function advances the input position.
Return Value
The character at the current position of the controlled input sequence, as a value of type int
.
If there are no more characters to read from the controlled input sequence, it returns the end-of-file value (EOF).
Data races
Modifies the filebuf object.
Concurrent access to the same file stream buffer object may introduce data races.
Exception safety
Basic guarantee: if an exception is thrown, the file stream buffer is in a valid state.
See also
- filebuf::underflow
- Get character on underflow (protected virtual member function)
- streambuf::uflow
- Get character on underflow and advance position (protected virtual member function)
- streambuf::sbumpc
- Get current character and advance to next position (public member function)