表示實作特定的低層級系統錯誤。
語法
class error_code;
備註
類型為 error_code 類別的物件會儲存錯誤碼值和物件指標,該物件表示的錯誤碼分類可描述回報的低層級系統錯誤。
成員
建構函式
| 名稱 | 描述 |
|---|---|
| error_code | 建構類型 error_code 的物件。 |
Typedefs(類型定義)
| 名稱 | 描述 |
|---|---|
| value_type | 此類型表示預存的錯誤碼值。 |
Functions
| 名稱 | 描述 |
|---|---|
| 指派 | 可針對錯誤碼指派錯誤碼值和分類。 |
| 類別 | 傳回錯誤分類。 |
| 清除 | 清除錯誤碼值和分類。 |
| default_error_condition | 傳回預設的錯誤狀況。 |
| 訊息 | 傳回錯誤碼的名稱。 |
操作員
| 名稱 | 描述 |
|---|---|
| operator== | 測試 error_code 物件是否相等。 |
| 運算符!= | 測試 error_code 物件是否不相等。 |
| 運算子< | 測試 error_code 物件是否小於傳入以進行比較的 error_code 物件。 |
| 運算子= | 將新的列舉值指派給 error_code 物件。 |
| operator bool | 轉換 error_code 類型的變數。 |
指派
可針對錯誤碼指派錯誤碼值和分類。
void assign(value_type val, const error_category& _Cat);
參數
瓦爾
要儲存在 error_code 中的錯誤碼值。
_貓
要儲存在 error_code 中的錯誤分類。
備註
成員函式會將 val 儲存為錯誤碼值,以及_Cat的指標。
分類
傳回錯誤分類。
const error_category& category() const;
清晰
清除錯誤碼值和分類。
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(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);
參數
瓦爾
要儲存在 error_code 中的錯誤碼值。
_貓
要儲存在 error_code 中的錯誤分類。
_Errcode
要儲存在 error_code 中的列舉值。
備註
第一個建構函式會儲存零的錯誤碼值以及 generic_category 的指標。
第二個建構函式會將 val 儲存為錯誤碼值,以及error_category的指標。
第三個建構函式會儲存 (value_type)_Errcode 作為錯誤碼值,並儲存 generic_category 的指標。
訊息
傳回錯誤碼的名稱。
string message() const;
傳回值
string,表示錯誤碼的名稱。
備註
此成員函式會傳回 category().message(value())。
operator==
測試 error_code 物件是否相等。
bool operator==(const error_code& right) const;
參數
右
要測試是否相等的物件。
傳回值
true 如果物件相等,則為 ; false 如果物件不相等,則為 。
備註
此成員運算子會傳回 category() == right.category() && value == right.value()。
operator!=
測試 error_code 物件是否不相等。
bool operator!=(const error_code& right) const;
參數
右
要測試是否不相等的物件。
傳回值
true
error_code如果物件不等於傳入右邊error_code,則為 ,否則false為 。
備註
此成員運算子會傳回 !(*this == right)。
operator<
測試 error_code 物件是否小於傳入以進行比較的 error_code 物件。
bool operator<(const error_code& right) const;
參數
右
要比較的 error_code 物件。
傳回值
true
error_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 物件的布林值。
備註
只有當 true 不等於零時,運算子才會傳回可以轉換成 的值。 傳回類型僅可轉換為 bool,而非 void * 或其他已知的純量類型。
價值
傳回預存的錯誤碼值。
value_type value() const;
傳回值
value_type 類型的預存錯誤碼值。
value_type
此類型表示預存的錯誤碼值。
typedef int value_type;
備註
此類型定義與 int 同義。