首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::basic_filebuf::pbackfail

protected: virtual int_type pbackfail( int_type c = Traits::eof() )

?

?

此受保护的虚拟函数由公共函数调用。basic_streambuf::sungetcbasic_streambuf::sputbackc%28,依次被basic_istream::ungetbasic_istream::putback29%。

1%29调用方请求GET区域由一个字符%28备份pbackfail()调用时不带参数%29,在这种情况下,此函数将重新读取文件,该文件在一个字节之前开始并减少。basic_streambuf::gptr(),例如通过打电话gbump(-1)...

2%29调用者尝试将一个与先前检索的字符不同的字符pbackfail()使用需要返回%29的字符调用,在这种情况下

a%29,首先检查是否存在一个putback位置,如果有%27T,则通过在一个字节之前重新读取文件来备份get区域。

然后,一个%29检查哪个字符处于回推位置。如果那里的字符已经等于c,由Traits::eq(to_char_type(c), gptr()[-1]),然后简单地减少basic_streambuf::gptr()...

B%29否则,如果允许缓冲区修改自己的GET区域,则会减少basic_streambuf::gptr()c调整后指向gptr%28%29的位置。

此函数从不修改文件,只修改内存缓冲区的GET区域.

如果文件未打开%28is_open()==false,则此函数返回Traits::eof()马上。

参数

c

-

the character to put back, or Traits::eof() to indicate that backing up of the get area is requested

返回值

c关于成功,除非cTraits::eof(),在这种情况下Traits::not_eof(c)会被归还。

Traits::eof()在失败的时候。

另见

pbackfail virtual

puts a character back into the input sequence, possibly modifying the input sequence (virtual protected member function of std::basic_streambuf)

sungetc

moves the next pointer in the input sequence back by one (public member function of std::basic_streambuf)

sputbackc

puts one character back in the input sequence (public member function of std::basic_streambuf)

unget

unextracts a character (public member function of std::basic_istream)

putback

puts character into input stream (public member function of std::basic_istream)

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com