Поделиться через


Класс error_condition

Представляет коды ошибок, определенные пользователем.

Синтаксис

class error_condition;

Замечания

Объект типа error_condition сохраняет значение кода ошибки и указатель на объект, представляющий категорию кодов ошибок, используемую для сообщаемых ошибках, определяемых пользователем.

Участники

Конструкторы

Имя Описание
error_condition Создает объект типа error_condition.

Определения типов

Имя Описание
value_type Тип, представляющий сохраняемое значение кода ошибки.

Функции

Имя Описание
assign Присваивает условию ошибки значение кода ошибки и категорию.
category Возвращает категорию ошибки.
пусто Очищает значение кода ошибки и категорию.
message Возвращает имя кода ошибки.

Операторы

Имя Описание
operator== Проверяет равенство между объектами error_condition.
оператор!= Проверяет неравенство между объектами error_condition.
operator< Проверяет, меньше ли объект error_condition переданного для сравнения объекта error_code.
operator= Присваивает новое значение перечисления объекту error_condition.
operator bool Преобразует переменную типа error_condition.

назначить

Присваивает условию ошибки значение кода ошибки и категорию.

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

Параметры

Val
Значение кода ошибки для хранения в error_code.

_Кошка
Категория ошибки для хранения в error_code.

Замечания

Функция-член сохраняет val в качестве значения кода ошибки и указатель на _Cat.

Категория

Возвращает категорию ошибки.

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().

оператор!=

Проверяет неравенство между объектами 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.

Замечания

Оператор возвращает значение, преобразуемое в true, только тогда, когда значение не равно нулю. Тип возвращаемого значения можно преобразовать только в bool, а не в void * или другие известные скалярные типы.

значение

Возвращает сохраненное значение кода ошибки.

value_type value() const;

Возвращаемое значение

Сохраненное значение кода ошибки типа value_type.

Замечания

value_type

Тип, представляющий сохраняемое значение кода ошибки.

typedef int value_type;

Замечания

Это определение типа — синоним для int.