C++ 结构体 (struct)
C++ 结构体
C++ 结构体是一种将多个相关的变量组合在一起的方式。结构体中的每个变量都被称为结构体的成员。
与数组不同,结构体可以包含许多不同的数据类型(如 int、string、bool 等)。
创建结构体
要创建一个结构体,请使用 struct 关键字并在花括号内声明其每个成员。
声明后,指定结构体的变量名(在下面的实例中为 myStructure):
struct { // 结构体声明
int myNum; // 成员(int 变量)
string myString; // 成员(string 变量)
} myStructure; // 结构体变量
访问结构成员
要访问结构体的成员,请使用点语法 (.):
实例
将数据分配给结构体的成员并打印它:
// 创建一个名为 myStructure 的结构体变量
struct {
int myNum;
string myString;
} myStructure;
// 为 myStructure 的成员赋值
myStructure.myNum = 1;
myStructure.myString = "Hello World!";
// 打印 myStructure 的成员
cout << myStructure.myNum << "\n";
cout << myStructure.myString << "\n";
多个变量中的一个结构体
您可以使用逗号 (,) 在多个变量中使用一个结构体:
struct {
int myNum;
string myString;
} myStruct1, myStruct2, myStruct3; // 使用逗号分隔的多个结构体变量
此例演示如何在两个不同的变量中使用一个结构体:
实例
使用一个结构体来表示两辆车:
struct {
string brand;
string model;
int year;
} myCar1, myCar2; // 我们可以在这里使用逗号来添加变量
// 将数据放入第一个结构体
myCar1.brand = "BMW";
myCar1.model = "X5";
myCar1.year = 1999;
// 将数据放入第二个结构体
myCar2.brand = "Ford";
myCar2.model = "Mustang";
myCar2.year = 1969;
// 打印结构体的成员
cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
命名结构体
通过给结构体命名,您可以将其视为一种数据类型。这意味着您可以在程序的任何位置、任何时间使用此结构体创建变量。
要创建命名结构体,将结构体的名称放在 struct 关键字之后:
struct myDataType { // 这个结构体被命名为 "myDataType"
int myNum;
string myString;
};
要声明使用该结构体的变量,请使用结构体的名称作为变量的数据类型:
myDataType myVar;
实例
使用一个结构体来表示两辆车:
// 声明一个名为 "car" 的结构体
struct car {
string brand;
string model;
int year;
};
int main() {
// 创建一个 car 结构体并将其存储在 myCar1 中;
car myCar1;
myCar1.brand = "BMW";
myCar1.model = "X5";
myCar1.year = 1999;
// 创建另一个 car 结构体并将其存储在 myCar2 中;
car myCar2;
myCar2.brand = "Ford";
myCar2.model = "Mustang";
myCar2.year = 1969;
// 打印结构体的成员
cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
return 0;
}