ユーザー定義のエラー コードを表します。
構文
class error_condition;
解説
error_condition
型のオブジェクトは、エラー コード値を格納するほか、レポートされたユーザー定義のエラーに使用されるエラー コードのカテゴリを表すオブジェクトを指すポインターも格納します。
メンバー
コンストラクター
名前 | 説明 |
---|---|
error_condition |
error_condition 型のオブジェクトを構築します。 |
Typedefs
名前 | 説明 |
---|---|
value_type | 格納されたエラー コード値を表す型。 |
関数
名前 | 説明 |
---|---|
割り当てる | エラー コード値とカテゴリをエラー条件に割り当てます。 |
カテゴリー | エラー カテゴリを返します。 |
クリア | エラー コード値とカテゴリをクリアします。 |
メッセージ | エラー コードの名前を返します。 |
演算子
名前 | 説明 |
---|---|
operator== |
error_condition オブジェクト間の同等性をテストします。 |
演算子!= |
error_condition オブジェクト間の不等性をテストします。 |
演算子< |
error_condition オブジェクトが比較のために渡される error_code オブジェクトより小さいかどうかをテストします。 |
演算子 = |
error_condition オブジェクトに新しい列挙値を代入します。 |
operator bool |
error_condition 型の変数をキャストします。 |
割り当て
エラー コード値とカテゴリをエラー条件に割り当てます。
void assign(value_type val, const error_category& _Cat);
パラメーター
ヴァル
error_code
に格納するエラー コード値。
_猫
error_code
に格納するエラー カテゴリ。
解説
このメンバー関数は、エラー コード値としての val と _Cat を指すポインターを格納します。
カテゴリ
エラー カテゴリを返します。
const error_category& category() const;
戻り値
格納されたエラー カテゴリへの参照
解説
クリア
エラー コード値とカテゴリをクリアします。
clear();
解説
このメンバー関数はゼロ エラー コード値と generic_category を指すポインターを格納します。
error_condition
error_condition
型のオブジェクトを構築します。
error_condition();
error_condition(value_type val, const error_category& _Cat);
template <class _Enum>
error_condition(_Enum _Errcode,
typename enable_if<is_error_condition_enum<_Enum>::value,
error_code>::type* = 0);
パラメーター
ヴァル
error_condition
に格納するエラー コード値。
_猫
error_condition
に格納するエラー カテゴリ。
_Errcode
error_condition
に格納する列挙値。
解説
最初のコンストラクターはゼロ エラー コード値と generic_category を指すポインターを格納します。
2 番目のコンストラクターは、エラー コード値としての val と error_category を指すポインターを格納します。
3 番目のコンストラクターは、エラー コード値としての (value_type)_Errcode
と generic_category を指すポインターを格納します。
メッセージ
エラー コードの名前を返します。
string message() const;
戻り値
エラー コードの名前を表す string
。
解説
このメンバー関数は category().message(value())
を返します。
operator==
error_condition
オブジェクト間の同等性をテストします。
bool operator==(const error_condition& right) const;
パラメーター
右
等しいかどうかをテストするオブジェクト。
戻り値
オブジェクトが等しい場合は true
、オブジェクトが等しくない場合は false
。
解説
このメンバー演算子は、 category() == right.category() && value == right.value()
を返します。
operator!=
error_condition
オブジェクト間の不等性をテストします。
bool operator!=(const error_condition& right) const;
パラメーター
右
不等性をテストするオブジェクト。
戻り値
true
オブジェクトが、error_condition
に渡される error_condition
オブジェクトに等しくない場合は 。それ以外の場合は false
。
解説
このメンバー演算子は、 !(*this == right)
を返します。
operator<
error_condition
オブジェクトが比較のために渡される error_code
オブジェクトより小さいかどうかをテストします。
bool operator<(const error_condition& right) const;
パラメーター
右
比較される error_condition
オブジェクト。
戻り値
true
オブジェクトが、比較対象として渡された error_condition
オブジェクトより小さい場合は error_condition
。それ以外の場合は false
。
解説
このメンバー演算子は、 category() < right.category() || category() == right.category() && value < right.value()
を返します。
operator=
error_condition
オブジェクトに新しい列挙値を代入します。
template <class _Enum>
error_condition(_Enum error,
typename enable_if<is_error_condition_enum<_Enum>::value,
error_condition>::type&
operator=(Enum _Errcode);
パラメーター
_Errcode
error_condition
オブジェクトに代入する列挙値。
戻り値
メンバー関数によって新しい列挙値が代入される error_condition
オブジェクトへの参照。
解説
このメンバー演算子は、エラー コード値としての (value_type)error
と generic_category を指すポインターを格納します。
*this
を返します。
operator bool
error_condition
型の変数をキャストします。
explicit operator bool() const;
戻り値
error_condition
オブジェクトのブール値。
解説
この演算子は、true
が 0 と等しくない場合に限り、 に変換できる値が返されます。 戻り値の型は、bool
またはその他の既知のスカラー型ではなく、void *
型にのみ変換可能です。
値
格納されたエラー コード値を返します。
value_type value() const;
戻り値
value_type 型の格納されたエラー コード値。
解説
value_type
格納されたエラー コード値を表す型。
typedef int value_type;
解説
この型定義は int
のシノニムです。