结构体struct
时间: 2023-06-21 18:20:52 浏览: 149
在C++中,结构体(`struct`)是一种自定义的数据类型,可以将不同类型的数据组合成一个整体,方便对这些数据进行管理和使用。与类(`class`)相比,结构体更为简单,通常用于表示数据结构,而不涉及复杂的面向对象思想。
结构体的定义通常在函数外部进行,语法如下:
```c++
struct 结构体名 {
数据类型 成员变量1;
数据类型 成员变量2;
// ...
};
```
其中,`结构体名`是结构体类型的名称,`成员变量`是结构体中包含的数据,可以是任意的数据类型,包括基本数据类型和自定义数据类型。结构体中的成员变量可以使用点运算符(`.`)访问,例如:
```c++
struct Person {
string name;
int age;
};
Person p1 = {"Tom", 20};
cout << p1.name << " is " << p1.age << " years old." << endl;
```
输出结果为:`Tom is 20 years old.`
除了点运算符,还可以使用箭头运算符(`->`)访问结构体中的成员变量,例如:
```c++
Person* p2 = new Person{"Jerry", 25};
cout << p2->name << " is " << p2->age << " years old." << endl;
```
输出结果为:`Jerry is 25 years old.`
需要注意的是,结构体中的成员变量可以包含函数指针,但不可以包含函数体。此外,在函数中传递结构体时,通常使用引用或指针的形式,以避免复制结构体所占用的大量内存。
阅读全文