Некоторые функции стандартной библиотеки C ++ сообщают об ошибках через std::error_code объект.category() Член этого объекта должен возвращать std::system_category() для ошибок, происходящих из операционной системы, или ссылку на объект, определенный реализацией, error_category для ошибок, возникающих в другом месте. Реализация должна определять возможные значения value() для каждой из этих категорий ошибок. [ Example: Для операционных систем, основанных на POSIX, реализациям рекомендуется определять std::system_category() значения как идентичные errno значениям POSIX , с дополнительными значениями, как определено в документации операционной системы. Реализациям для операционных систем, не основанных на POSIX, рекомендуется определять значения, идентичные значениям операционной системы. Для ошибок, которые происходят не из операционной системы, реализация может предоставить перечисления для связанных значений. ] — end example