共用方式為


error_code 類別

表示實作特定的低層級系統錯誤。

語法

class error_code;

備註

類型為 error_code 類別的物件會儲存錯誤碼值和物件指標,該物件表示的錯誤碼分類可描述回報的低層級系統錯誤。

成員

建構函式

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

Typedefs

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

函式

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

操作員

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

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 物件的指標。

default_error_condition

傳回預設的錯誤狀況。

error_condition default_error_condition() const;

傳回值

default_error_condition 所指定的 error_condition

備註

此成員函式會傳回 category().default_error_condition(value())

error_code

建構類型 error_code 的物件。

error_code();

error_code(value_type val, const error_category& _Cat);

template <class _Enum>
error_code(_Enum _Errcode,
    typename enable_if<is_error_code_enum<_Enum>::value,
    error_code>::type* = 0);

參數

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

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

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

備註

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

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

第三個建構函式會儲存 (value_type)_Errcode 作為錯誤碼值,並儲存 generic_category 的指標。

message

傳回錯誤碼的名稱。

string message() const;

傳回值

string,表示錯誤碼的名稱。

備註

此成員函式會傳回 category().message(value())

operator==

測試 error_code 物件是否相等。

bool operator==(const error_code& right) const;

參數

right
要測試是否相等的物件。

傳回值

true 如果物件相等,則為 ; false 如果物件不相等,則為 。

備註

此成員運算子會傳回 category() == right.category() && value == right.value()

operator!=

測試 error_code 物件是否不相等。

bool operator!=(const error_code& right) const;

參數

right
要測試是否不相等的物件。

傳回值

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

備註

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

operator<

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

bool operator<(const error_code& right) const;

參數

right
要比較的 error_code 物件。

傳回值

trueerror_code如果物件小於傳入以進行比較的物件, error_code 則為 ;否則為 false

備註

此成員運算子會傳回 category() < right.category() || category() == right.category() && value < right.value()

operator=

將新的列舉值指派給 error_code 物件。

template <class _Enum>
typename enable_if<is_error_code_enum<_Enum>::value, error_code>::type&
    operator=(_Enum _Errcode);

參數

_Errcode
要指派給 error_code 物件的列舉值。

傳回值

error_code 物件的參考,該物件為成員函式要指派新列舉值的目標 。

備註

成員運算子會儲存 (value_type)_Errcode 作為錯誤碼值,並儲存 generic_category 的指標。 它會傳回 *this

operator bool

轉換 error_code 類型的變數。

explicit operator bool() const;

傳回值

error_code 物件的布林值。

備註

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

value

傳回預存的錯誤碼值。

value_type value() const;

傳回值

value_type 類型的預存錯誤碼值。

value_type

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

typedef int value_type;

備註

此類型定義與 int 同義。