std::basic_ios<CharT,Traits>::rdstate

< cpp‎ | io‎ | basic ios
iostate rdstate() const;

返回当前错误状态。

参数

(无)

返回值

当前错误状态。它是位掩码类型,并且能是下列常量的组合:

 
常量 解释
goodbit 无错误
badbit 不可恢复的流错误
failbit 输入/输出操作失败(格式化或提取错误)
eofbit 关联的输出序列已抵达文件尾

示例

#include <iostream>
#include <sstream>
 
int main()
{
  std::ostringstream stream;
 
  if (stream.rdstate() == std::ios_base::goodbit) {
    std::cout << "stream state is goodbit\n";
  }
 
  stream.setstate(std::ios_base::eofbit);
 
  // 检查状态为准确的 eofbit (无 failbit 且无 badbit )
  if (stream.rdstate() == std::ios_base::eofbit) {
    std::cout << "stream state is eofbit\n";
  }
}

输出:

stream state is goodbit
stream state is eofbit

参阅

设置状态标志
(公开成员函数)
修改状态标志
(公开成员函数)