函数
<ios> <iostream>

std::iostream_category

const error_category& iostream_category();
const error_category& iostream_category() noexcept;
返回 iostream 类别
返回一个指向具有以下特征的 `error_category` 类型静态对象的引用。

与此类别关联的是描述与枚举类型 io_errc 相对应的错误的 error_condition 对象。何为其中一个对应的关系取决于操作系统和具体的库实现。

参数



返回值

iostream error_category 对象的引用。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// io_errc example
// iostream_category example
#include <iostream>     // std::cin, std::cerr, std::ios,
                        // std::iostream_category
int main () {
  std::cin.exceptions (std::ios::failbit|std::ios::badbit);
  try {
    std::cin.rdbuf(nullptr);    // throws
  } catch (std::ios::failure& e) {
    std::cerr << "failure caught: ";
    if ( e.code().category() == std::iostream_category() )
      std::cerr << "error code of the iostream category\n"; 
    else
      std::cerr << "error code of some other category\n";
  }
  return 0;
}

可能的输出

failure caught: error code of the iostream category


异常安全

无异常保证:此函数从不抛出异常。

另见