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 ✅