我想在C ++中初始化struct和array的一些元素。
在C中你可以这样做:
unsigned char array[30] = {[1] = 4, [20] = 4};
struct mystruct
{ int i;
int j;
}
struct mystruct e = {.j = 2};
但是我无法用C ++做到这一点。有没有办法实现这种指定的初始化器?
答案 0 :(得分:1)
在C++
struct中有构造函数(就像class
),所以你总是可以在其中初始化var。
答案 1 :(得分:0)
初始化数组或结构中的所有元素总是好的,以避免许多错误。
以下可能对您有帮助。
结构初始化
struct myStruct
{
int i;
int j;
myStruct()
{
j=10; //default Constructor
}
};
数组的初始化:
unsigned char array[5];
array[0]='A';
array[2]='C';