最終更新日時: 2025年07月12日 02時16分44秒 (JST)
Koichi Murase が更新

履歴 編集

class template
<ios>

# std::is_error_code_enum(C++11)

    namespace std {
      template <>
      struct is_error_code_enum<io_errc> : public true_type { };
    }

## 概要

`io_errc`に対する`is_error_code_enum`の特殊化。 `error_code`のコンストラクタに`io_errc`の列挙値を指定するために使用する。 それによって`make_error_code()`の`io_errc`に対するオーバーロードが呼び出され、`iostream_category()`の`error_code`オブジェクトが生成される。

## 例

    #include <iostream> // 自動的に<ios>もインクルードされる

    int main()
    {
      std::error_code ec(std::io_errc::stream);
          // 内部でstd::make_error_code(std::io_errc::stream)が呼ばれる

      std::cout << ec.message() << std::endl;
    }

### 出力例

    iostream stream error

## バージョン

### 言語

- C++11

### 処理系

- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: 2012 ✅

## 参照