std::error_code::error_code
From cppreference.com
                    
                                        
                    < cpp | error | error code
                    
                                                            
                    | error_code() noexcept; | (1) | (since C++11) | 
| error_code( int ec, const error_category& ecat ) noexcept; | (2) | (since C++11) | 
| template< class ErrorCodeEnum > error_code( ErrorCodeEnum e ) noexcept; | (3) | (since C++11) | 
Constructs new error code.
1) Constructs error code with default value. Equivalent to error_code(0, std::system_category()).
2) Constructs error code with 
ec as the platform-dependent error code and ecat as the corresponding error category.3) Constructs error code from an error code enum 
e. Equivalent to *this = make_error_code(e). The overload participates in overload resolutions only if std::is_error_code_enum<ErrorCodeEnum>::value == true.Parameters
| ec | - | platform dependent error code to construct with | 
| ecat | - | error category corresponding to ec | 
| e | - | error code enum to construct with | 
See also
| (C++11) | constructs an std::errc error code (function) | 
| constructs an iostream error code (function) | |
| constructs a future error code (function) |