29 结构体与类之结构体的定义与使用
在上篇中,我们讨论了指针与引用的概念,深入了解了如何通过指针和引用来操作数据。现在我们将继续我们的学习之旅,关注于 结构体
的定义与使用。虽然 结构体
和 类
有许多相似之处,但它们在C++中的使用场景和目的各有不同。
结构体的定义
在C++中,结构体
是一种用户自定义的数据类型,它可以包含多个不同类型的数据成员。我们可以使用 struct
关键字来定义一个结构体。通常情况下,结构体
用于将一组相关的数据组合在一起,方便进行统一管理。
结构体的基本语法
1 | struct StructureName { |
例子:定义一个点的结构体
下面是一个定义二维平面中点的结构体 Point
的例子:
1 | struct Point { |
结构体的使用
定义了结构体后,我们可以创建该结构体类型的变量,并访问其成员。可以通过 .
操作符来访问结构体的成员。
1 | int main() { |
在这个例子中,我们首先声明了一个 Point
类型的变量 p1
,然后给它的 x
和 y
成员赋值,最后将其输出。
结构体的初始化
我们可以使用花括号来初始化结构体,简化代码的书写:
1 | Point p2 = {30, 40}; // 使用初始化列表 |
使用结构体数组
结构体还可以用于创建结构体数组,这在处理多个具有相同类型的数据时非常有用。
1 | Point points[3]; // 创建一个 Point 类型的数组 |
在这个例子中,我们创建了一个 Point
类型的数组 points
,并将多个点的坐标赋值给数组中的元素。
结构体与函数
结构体也可以作为函数参数传递,这使得在函数中处理一组相关数据变得更加简单。
例子:传递结构体到函数
1 | void printPoint(Point p) { |
在这个例子中,我们定义了一个 printPoint
函数,它接收一个 Point
类型的参数 p
,并输出其坐标。在 main
函数中调用时,我们传递了结构体 p3
。
总结
在C++中,结构体
是一种方便的数据组织方式,能够将相关属性结合在一起。通过上面的学习,我们掌握了如何定义和使用结构体,包括初始化、数组操作以及在函数中的应用。
接下来,我们将进入一个新主题,探讨 类
的基本概念。类
和 结构体
有许多相似之处,但它们在封装和数据保护方面提供了更强的功能。在下一篇中,我们将进一步深入了解这一重要的特性。
29 结构体与类之结构体的定义与使用