Rust - 结构
-
简述
数组用于表示同构值的集合。类似地,结构是 Rust 中可用的另一种用户定义的数据类型,它允许我们组合不同类型的数据项,包括另一种结构。结构将数据定义为键值对。 -
语法 - 声明结构
struct关键字用于声明的结构。由于结构是静态类型的,结构中的每个字段都必须与一种数据类型相关联。结构的命名规则和约定类似于变量的命名规则和约定。结构块必须以分号结尾。 -
语法 - 初始化结构
在声明一个结构体之后,每个字段都应该被赋值。这称为初始化。上面的示例声明了一个结构体 Employee,其中包含三个字段——名称、公司和类型的年龄。main() 初始化结构。它使用 println! 宏来打印结构中定义的字段的值。输出
-
修改结构体实例
要修改实例,实例变量应标记为可变的。下面的示例声明并初始化了一个名为Employee的结构,然后将age字段的值从 50修改为 40。输出
-
将结构体传递给函数
以下示例显示如何将 struct 的实例作为参数传递。display 方法将 Employee 实例作为参数并打印详细信息。这是完整的程序 -输出
-
从函数返回结构
让我们考虑一个函数who_is_elder(),它比较两个员工的年龄并返回年长的一个。这是完整的程序 -输出
-
结构方法
方法就像函数。它们是一组逻辑编程指令。方法是用fn关键词。方法的范围在结构块内。方法在结构块之外声明。这impl关键字用于在结构上下文中定义方法。方法的第一个参数将始终是self,表示结构的调用实例。方法对结构的数据成员进行操作。要调用一个方法,我们需要首先实例化结构。可以使用结构的实例调用该方法。句法
说明
下面的例子定义了一个结构Rectangle与字段 - width和height。方法区是在结构的上下文中定义的。area 方法通过self关键字访问结构的字段并计算矩形的面积。输出
-
结构中的静态方法
静态方法可以用作实用方法。这些方法甚至在结构被实例化之前就存在。静态方法使用结构名称调用,无需实例即可访问。与普通方法不同,静态方法不会采用&self参数。语法 - 声明一个静态方法
像函数和其他方法这样的静态方法可以选择包含参数。语法 - 调用静态方法
structure_name ::语法用于访问静态方法。说明
下面的示例使用getInstance方法作为创建并返回结构Point实例的工厂类。输出