公共成员函数 (public member function)
<system_error>

std::error_condition::category

const error_category& category() const noexcept;
获取类别 (Get category)
返回与 error_condition 对象关联的 错误类别 的引用。

参数



返回值

对从 错误类别 派生的类型的一个不可复制的对象的引用。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// error_condition observers: value, category and message
#include <iostream>       // std::cout, std::ios
#include <system_error>   // std::system_error, std::error_condition
#include <fstream>        // std::ifstream
#include <string>         // std::string

int main()
{
  std::ifstream is;
  is.exceptions (std::ios::failbit);
  try {
    is.open ("unexistent.txt");
  } catch (std::system_error excptn) {
    std::error_condition cond = excptn.code().default_error_condition();
    std::cout << "Exception caught (system_error):\n";
    std::cout << "Value: " << cond.value() << '\n';
    std::cout << "Category: " << cond.category().name() << '\n';
    std::cout << "Message: " << cond.message() << '\n';
  }
  return 0;
}

可能的输出
Exception caught (system_error):
Value: 1
Category: iostream
Message: iostream stream error


另见