Rust 中如何定义结构体?

推荐答案

在 Rust 中,结构体(struct)是一种自定义数据类型,允许你将多个相关的值组合在一起。结构体的定义使用 struct 关键字,后跟结构体的名称和一对大括号 {},大括号内定义结构体的字段(field)。

在这个例子中,我们定义了一个名为 Person 的结构体,它有两个字段:nameagename 是一个 String 类型的字段,age 是一个 u8 类型的字段。

本题详细解读

结构体的定义

结构体的定义语法如下:

  • StructName 是结构体的名称,遵循 Rust 的命名规范(通常使用驼峰命名法)。
  • field1, field2 等是结构体的字段,每个字段都有一个名称和类型。

结构体的实例化

定义结构体后,可以通过以下方式创建结构体的实例:

在这个例子中,我们创建了一个 Person 结构体的实例 person,并为其字段 nameage 赋值。

访问结构体字段

可以使用点号 . 来访问结构体实例的字段:

可变结构体

如果希望修改结构体实例的字段,需要将实例声明为可变的:

元组结构体

Rust 还支持元组结构体(Tuple Struct),它类似于元组,但有一个名称:

元组结构体的字段没有名称,只能通过索引访问。

单元结构体

单元结构体(Unit Struct)是一种没有字段的结构体:

单元结构体通常用于实现某些 trait 或作为标记类型。

纠错
反馈