Пространства имён
Варианты
Действия

std::generic_category

Материал из cppreference.com
 
 
Библиотека диагностики
Обработка исключений
Сбои обработки исключений
(до C++17*)
(до C++17*)
(C++11)(до C++17*)    
(до C++17*)
Коды ошибок
Коды ошибок
Категории исключений
(ТС TM)
Поддержка системных ошибок
(C++11)
(C++11)
Утверждения
Трассировка стека
 
<tbody> </tbody>
Определено в заголовочном файле <system_error>
const std::error_category& generic_category() noexcept;
(начиная с C++11)

Получает ссылку на статический объект категории ошибок для общих ошибок. Объекту необходимо переопределить виртуальную функцию error_category::name(), чтобы возвращать указатель на строку "generic". Он используется для идентификации условий ошибок, соответствующих кодам POSIX errno.

Параметры

(нет)

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

Ссылка на статический объект неопределённого типа времени выполнения, полученный из std::error_category.

Пример

#include <iostream>
#include <system_error>
#include <cerrno>
#include <string>
int main()
{
    std::error_condition econd = std::generic_category().default_error_condition(EDOM);
    std::cout << "Категория: " << econd.category().name() << '\n'
              << "Значение: " << econd.value() << '\n'
              << "Сообщение: " << econd.message() << '\n';
}

Вывод:

Категория: generic
Значение: 33
Сообщение: Numerical argument out of domain

Смотрите также

определяет категорию ошибок операционной системы
(функция) [править]
(C++11)
перечисление std::error_condition, в котором перечислены все стандартные макроконстанты <cerrno>
(класс) [править]