初始化对结构的内部结构

问题描述:

你好,大家好我是在C++初始化对结构的内部结构

新手,我有一个问题与该代码

我尝试初始化一对是struct一个struct内

enum HD_ERRORS{ // headers errors 
    Preboot  =0, 
    Loopback =1, 
    toto  =2 
}; 

struct First_Next_ERR{ 
    bool First_Err; 
    bool Next_Err; 
    First_Next_ERR() : First_Err(0),Next_Err(0) {};  
    }; 


struct Func_H_Errors{ 
pair < HD_ERRORS, First_Next_ERR > Preboot_er ; 
Func_H_Errors() : Preboot_er (Preboot){}; 
}; 

所以我得到这个错误 错误:呼叫没有匹配功能“的std ::对::对(HD_ERRORS)”

我只想初始化枚举类型我派的我不关心结构,因为我已经初始化它

对构造函数需要2个参数。在你的情况,你需要类型的参数First_Next_ERR

试试看这样的:

struct Func_H_Errors 
{ 
    pair <HD_ERRORS, First_Next_ERR> Preboot_er ; 
    Func_H_Errors() 
     : Preboot_er (toto, First_Next_ERR()) 
    {} 
};