如何使用初始化列表初始化数组元素?

Roo*_*kie 7 c++ visual-c++

我尝试这样的东西(没有编译):

struct mystruct {
    somestruct arr[4];
    mystruct(somestruct val) : arr[0](val), arr[1](val), arr[2](val), arr[3](val) {}
};
Run Code Online (Sandbox Code Playgroud)

如何在c ++中做得最好?

注意:我可能想要使用此方法仅设置一些数组元素.

Mik*_*our 6

在C++ 11中,如果要设置所有元素:

mystruct(somestruct val) : arr{val,val,val,val} {}
Run Code Online (Sandbox Code Playgroud)

在C++ 03或C++ 11中,如果您只想设置一些元素:

mystruct(somestruct val) {
    arr[0] = val;
    arr[1] = val;
    arr[2] = val;
    arr[3] = val;
}
Run Code Online (Sandbox Code Playgroud)