public member function
<ios> <iostream>
std::ios::bad
检查 badbit 是否被设置
如果流的 错误状态标志 badbit 被设置,则返回 true
。
此标志在读取或写入数据时发生错误,通常导致流的完整性丢失的操作上被设置。
请注意,此函数与 good 并非完全相反。good 检查是否没有错误标志(eofbit、failbit 和 badbit)被设置,而不仅仅是 badbit。
iostate 值 (成员常量) | 表示 | 检查状态标志的函数 |
good() | eof() | fail() | bad() | rdstate() |
goodbit | 无错误(值为零 iostate) | true | false | false | false | goodbit |
eofbit | 到达文件尾 | false | true | false | false | eofbit |
failbit | I/O 操作的逻辑错误 | false | false | true | false | failbit |
badbit | I/O 操作的读/写错误 | false | false | true | true | badbit |
eofbit、failbit 和 badbit 是具有实现定义值的成员常量,可以进行组合(就像使用按位 OR 运算符一样)。
goodbit 为零,表示其他位均未设置。
返回值
如果流的 badbit 错误状态标志被设置,则为 true
。
否则返回 false
。
数据竞争
访问流对象。
并发访问同一个流对象可能导致数据争用。
异常安全
强保证: 如果抛出异常,流不会发生任何改变。