std::basic_streambuf<CharT,Traits>::showmanyc
protected: virtual std::streamsize showmanyc(); |
||
Estimates the number of characters available for input in the associated character sequence. underflow() is guaranteed not to return Traits::eof() or throw an exception until at least that many characters are extracted.
Contents |
[edit] Parameters
(none)
[edit] Return value
The number of characters that are certainly available in the associated character sequence, or -1 if showmanyc
can determine, without blocking, that no characters are available. If showmanyc
returns -1, underflow() and uflow() will definitely return Traits::eof or throw.
The base class version returns 0, which has the meaning of "unsure if there are characters available in the associated sequence".
[edit] Notes
The name of this function stands for "stream: how many characters?", so it is pronounced "S how many C", rather than "show many C".
[edit] Example
This section is incomplete Reason: no example |
[edit] Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 159 | C++98 | underflow() is guaranteed not to fail until at least showmanyc() characters are supplied
|
extended the guarantee to allow at leastshowmanyc() characters to be extracted
|
[edit] See also
obtains the number of characters immediately available in the get area (public member function) | |
[virtual] |
optionally provides the number of characters available for input from the file (virtual protected member function of std::basic_filebuf<CharT,Traits> )
|