namespace std {
template <>
struct is_error_code_enum<future_errc> : public true_type { };
}
概要
future_errc
に対するis_error_code_enum
の特殊化。
error_code
のコンストラクタにfuture_errc
の列挙値を指定するために使用する。それによってmake_error_code()
のfuture_errc
に対するオーバーロードが呼び出され、future_category()
のerror_code
オブジェクトが生成される。
例
#include <iostream>
#include <future>
#include <string>
int main()
{
std::error_code ec(std::future_errc::broken_promise);
// 内部でstd::make_error_code(std::future_errc::broken_promise)が呼ばれる
std::cout << ec.message() << std::endl;
}
出力例
Broken promise
バージョン
言語
- C++11
処理系
- Clang: ??
- GCC: 4.7.0 ✅
- ICC: ??
- Visual C++: 2012 ✅