[syserr.errcode.overview] (original) (raw)

The class error_code describes an object used to hold error code values, such as those originating from the operating system or other low-level application program interfaces.

[Note 1:

Class error_code is an adjunct to error reporting by exception.

— _end note_]

namespace std { class error_code { public: error_code() noexcept; error_code(int val, const error_category& cat) noexcept;template<class ErrorCodeEnum> error_code(ErrorCodeEnum e) noexcept;void assign(int val, const error_category& cat) noexcept;template<class ErrorCodeEnum> error_code& operator=(ErrorCodeEnum e) noexcept;void clear() noexcept;int value() const noexcept;const error_category& category() const noexcept; error_condition default_error_condition() const noexcept; string message() const;explicit operator bool() const noexcept;private: int val_; const error_category* cat_; }; error_code make_error_code(errc e) noexcept;template<class charT, class traits> basic_ostream<charT, traits>& operator<<(basic_ostream<charT, traits>& os, const error_code& ec);}