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