欢迎访问我的网站,希望内容对您有用,感兴趣的可以加入我们的社群。

Rust 中的结构体

Rust 迷途小书童 2年前 (2023-02-06) 860次浏览 0个评论

环境

  • windows 10 64bit

简介

Rust 中的结构体是一种自定义的数据类型,它可以将多个不同数据类型的值组合起来,满足项目中的实际需求。

定义

Rust 使用关键字 struct 来定义并命名结构体

struct User {
        name: String,
        age: u32,
        score: f64,
        married: bool,
    }

大括号中是结构体所包含的各类型数据,包括名称和类型,这些数据是结构体的各个字段。

定义好了结构体,下面看看如何创建结构体实例

let user_jack = User {
        name: String::from("jack"),
        age: 20,
        score: 100.0,
        married: false,
    };

各个字段的顺序是无关的,完全可以将 namemarried 位置互换,使用点操作来引用结构体实例中的字段

// 获取name字段值
user.jack.name

// 获取married字段值
user.jack.married

与普通的数据类型一样,默认情况下,结构体实例是不可变的,要使其可变,就要加上 mut 关键字。如果实例是可变的,那么实例的所有字段都是可变的。

let mut user_jack = User {
        name: String::from("jack"),
        age: 20,
        score: 100.0,
        married: false,
    };

user_jack.score = 95.5;

除了上面的方法,还可以使用另外一种类似于元组的方式定义结构体,这种结构体也叫元组结构体

struct RGB(i32, i32, i32);

let black = RGB(0, 0, 0);

可以看到,元组结构体不需要对各个字段进行命名,仅仅给出了字段的数据类型

喜欢 (0)

您必须 登录 才能发表评论!