std::error_code:: error_code
      From cppreference.net
     
     
      
       <
       
        cpp
       
        |
       
        error
       
        |
       
        error code
       
      
     
     
        
         C++
        
        
         
          
           
          
          
         
        
       
       
        
         Utilities library
        
        
         
          
           
            
          
          
          
         
        
       
       | 
 | 
 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
        
         Diagnostics library
        
        
         
          
           
            
          
          
          
         
        
       
       | 
 | 
 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
        
         
          std::error_code
         
        
        
         
          
           
            
          
          
          
         
        
       
       | Member functions | ||||
| 
                
                 
                  
                   error_code::error_code
                  
                 
                
                | ||||
| Modifiers | ||||
| Observers | ||||
| Non-member functions | ||||
| 
                
                 
                 
                 
                  
                   (until C++20)
                  
                 
                 
                  
                   (until C++20)
                  
                 
                 
                  
                   (C++20)
                  
                 
                
                | ||||
| Helper classes | ||||
| 
           
            error_code
            
             (
            
            
             )
            
            
             noexcept
            
            
             ;
            
           
           | (1) | (自 C++11 起) | 
| 
           
            error_code
            
             (
            
            
             int
            
            ec,
            
             const
            
            error_category
            
             &
            
            ecat
            
             )
            
            
             noexcept
            
            
             ;
            
           
           | (2) | (自 C++11 起) | 
| 
           
            
             template
            
            
             <
            
            
             class
            
            ErrorCodeEnum
            
             >
            
             error_code ( ErrorCodeEnum e ) noexcept ; | (3) | (自 C++11 起) | 
| 
           
            error_code
            
             (
            
            
             const
            
            error_code
            
             &
            
            other
            
             )
            
            
             =
            
            
             default
            
            
             ;
            
           
           | (4) | (自 C++11 起) (隐式声明) | 
| 
           
            error_code
            
             (
            
            error_code
            
             &&
            
            other
            
             )
            
            
             =
            
            
             default
            
            
             ;
            
           
           | (5) | (自 C++11 起) (隐式声明) | 
构造新的错误代码。
       
        1)
       
       构造具有默认值的错误代码。等价于
       
        
         error_code
         
          (
         
         
          0
         
         ,
         
          
           std::
           
            system_category
           
          
         
         
          (
         
         
          )
         
         
          )
         
        
       
       。
      
      
      
       
        3)
       
       从错误码枚举
       
        
         e
        
       
       构造错误码。等效于
       
        
         make_error_code
         
          (
         
         e
         
          )
         
        
       
       ,其中
       
      
        make_error_code
       
       仅通过
       
        实参依赖查找
       
       才能找到。仅当
       
        
         
          
           std::
           
            is_error_code_enum
           
          
         
         
          <
         
         ErrorCodeEnum
         
          >
         
         
          ::
         
         
          value
         
        
       
       为
       
        
         
          true
         
        
       
       时,此重载才会参与重载决议。
      
       
        4,5)
       
       隐式定义的拷贝构造函数和移动构造函数。使用
       
        
         other
        
       
       的内容初始化错误码。
      
      参数
| other | - | 用于初始化的其他错误码 | 
| ec | - | 用于构造的平台相关错误码 | 
| ecat | - | 对应于 ec 的错误类别 | 
| e | - | 用于构造的错误代码枚举 | 
缺陷报告
下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。
| 问题报告 | 应用于 | 发布时的行为 | 正确行为 | 
|---|---|---|---|
| LWG 3629 | C++11 | 仅使用了 
          std::make_error_code
         重载 | 使用ADL查找的重载 | 
参见
| 
           
            
             
              (C++11)
             
            
           
           | 为 
          errc
         枚举值
         
          
           e
          
         
         创建错误码(函数) | 
| 
           
            
             
              (C++11)
             
            
           
           | 构造输入输出流错误码 (函数) | 
| 构造 future 错误码 (函数) |