std::error_code::error_code
From cppreference.com
                    
                                        
                    < cpp | error | error code
                    
                                                            
                    |   error_code(); 
 | 
(1) | (since C++11) | 
|   error_code( int ec, const error_category& ecat ); 
 | 
(2) | (since C++11) | 
|   template< class ErrorCodeEnum > 
error_code( ErrorCodeEnum e );  | 
(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 = std::make_error_code(e). The overload participates in overload resolutions only if std::is_error_code_enum<ErrorCodeEnum>::value == true.[edit] Parameters
| ec | - | platform dependent error code to construct with | 
| ecat | - |   error category corresponding to ec
 | 
| e | - | error code enum to construct with | 
[edit] Exceptions
noexcept specification:  
noexcept