- 使用初始化列表: 在定义结构体变量时,可以使用初始化列表来初始化结构体成员变量,这样可以确保结构体变量在创建时就被正确初始化。
struct Person {
std::string name;
int age;
};
Person p = {"Alice", 25};
- 使用默认成员初始化: 可以在定义结构体时为成员变量指定默认值,这样在创建结构体变量时可以不用为每个成员变量都赋值。
struct Person {
std::string name = "Alice";
int age = 25;
};
Person p;
- 使用构造函数: 可以为结构体定义构造函数,这样在创建结构体变量时可以调用构造函数来初始化成员变量。
struct Person {
std::string name;
int age;
Person(const std::string& n, int a) : name(n), age(a) {}
};
Person p("Alice", 25);
- 使用初始化函数: 可以为结构体定义专门的初始化函数,用来初始化成员变量。
struct Person {
std::string name;
int age;
void init(const std::string& n, int a) {
name = n;
age = a;
}
};
Person p;
p.init("Alice", 25);
- 使用聚合初始化: 可以使用聚合初始化来初始化结构体变量,这种方式可以简化代码,并且允许省略成员变量名称。
struct Person {
std::string name;
int age;
};
Person p = {"Alice", 25};