C++结构体的初始化方法有以下几种:
struct MyStruct {
int value1 = 10;
float value2 = 3.14f;
};
MyStruct obj; // 成员变量value1的值为10,value2的值为3.14
struct MyStruct {
int value1;
float value2;
MyStruct(int v1, float v2) : value1(v1), value2(v2) {}
};
MyStruct obj(10, 3.14f); // 成员变量value1的值为10,value2的值为3.14
struct MyStruct {
int value1;
float value2;
};
MyStruct obj;
obj.value1 = 10;
obj.value2 = 3.14f; // 成员变量value1的值为10,value2的值为3.14
需要注意的是,结构体的默认构造函数(没有参数的构造函数)只有在没有定义其他构造函数时才会自动生成,如果定义了有参数的构造函数,则需要自己实现默认构造函数。