共用方式為


error_condition 類別

代表使用者定義的錯誤碼。

語法

class error_condition;

備註

error_condition 類型的物件會儲存錯誤碼值和物件指標,該物件表示的錯誤碼分類可用來回報使用者定義的錯誤。

成員

建構函式

名稱 描述
error_condition 建構類型 error_condition 的物件。

Typedefs

名稱 描述
value_type 此類型表示預存的錯誤碼值。

函式

名稱 描述
assign 可針對錯誤狀況指派錯誤碼值和分類。
category 傳回錯誤分類。
clear 清除錯誤碼值和分類。
message 傳回錯誤碼的名稱。

操作員

名稱 描述
operator== 測試 error_condition 物件是否相等。
operator!= 測試 error_condition 物件是否不相等。
運算子< 測試 error_condition 物件是否小於傳入以進行比較的 error_code 物件。
operator= 將新的列舉值指派給 error_condition 物件。
operator bool 轉換 error_condition 類型的變數。

assign

可針對錯誤狀況指派錯誤碼值和分類。

void assign(value_type val, const error_category& _Cat);

參數

val
要儲存在 error_code 中的錯誤碼值。

_貓
要儲存在 error_code 中的錯誤分類。

備註

成員函式會將 val 儲存為錯誤碼值,以及_Cat的指標

category

傳回錯誤分類。

const error_category& category() const;

傳回值

預存的錯誤分類參考。

備註

clear

清除錯誤碼值和分類。

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 中的錯誤碼值。

_貓
要儲存在 error_condition 中的錯誤分類。

_Errcode
要儲存在 error_condition 中的列舉值。

備註

第一個建構函式會儲存零的錯誤碼值以及 generic_category 的指標。

第二個建構函式會將 val 儲存為錯誤碼值,以及error_category的指標

第三個建構函式會儲存 (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
要測試是否不相等的物件。

傳回值

trueerror_condition如果物件不等於傳入右邊的物件,則error_condition為 ,否則false為 。

備註

此成員運算子會傳回 !(*this == right)

operator<

測試 error_condition 物件是否小於傳入以進行比較的 error_code 物件。

bool operator<(const error_condition& right) const;

參數

right
要比較的 error_condition 物件。

傳回值

trueerror_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 物件的布林值。

備註

只有當 value 不等於零時,運算子才會傳回可以轉換成 true 的值。 傳回類型僅可轉換為 bool,而非 void * 或其他已知的純量類型。

value

傳回預存的錯誤碼值。

value_type value() const;

傳回值

value_type 類型的預存錯誤碼值。

備註

value_type

此類型表示預存的錯誤碼值。

typedef int value_type;

備註

此類型定義與 int 同義。