命名空间
变体
操作

std::basic_streambuf<CharT,Traits>::showmanyc

来自 cppreference.com
< cpp‎ | io‎ | basic streambuf
 
 
 
 
protected:
virtual std::streamsize showmanyc();

估计与关联字符序列相关联的输入中可用的字符数量。 underflow() 保证不会返回 Traits::eof() 或抛出异常,直到至少提取了那么多字符。

内容

[编辑] 参数

(无)

[编辑] 返回值

在关联字符序列中肯定可用的字符数量,或者 -1 如果 showmanyc 可以确定在不阻塞的情况下,没有字符可用。如果 showmanyc 返回 -1underflow()uflow() 将肯定会返回 Traits::eof 或抛出异常。

基类版本返回 0,这意味着“不确定关联序列中是否有可用字符”。

[编辑] 注释

此函数的名称代表“流:有多少个字符?”,因此,它读作“S how many C”,而不是“show many C”。

[编辑] 示例

[编辑] 缺陷报告

以下行为更改缺陷报告已追溯应用于先前发布的 C++ 标准。

DR 应用于 已发布的行为 正确的行为
LWG 159 C++98 underflow() 保证不会失败,直到
至少提供 showmanyc() 个字符
扩展保证以允许至少
提取 showmanyc() 个字符

[编辑] 参见

获取 get 区域中立即可用的字符数量
(公共成员函数) [编辑]
[虚拟]
可选地提供从文件中可用的字符数量
(std::basic_filebuf<CharT,Traits> 的虚拟受保护成员函数) [编辑]