Rust 程序设计语言 简体中文版 1.85.0
语言的实战介绍,我们会构建一个猜数字游戏。 我们会站在较高的层次介绍一些概念,而后续章节将提供更多细节。如果你希望立刻就动手实 践一下,第二章是开始的好地方。第三章介绍 Rust 中类似其他编程语言的特性,第四章会学 习 Rust 的所有权系统。如果你是一个特别细致的学习者,喜欢在进入下一环节之前学习每一 个细节,你可能会想要跳过第二章,直接阅读第三章,等到你想要通过项目应用所学到的细节 时再回到第二章。 的一个主要优势就是安全而简单的操纵引用。完成 当前程序并不需要了解如此多细节。现在,我们只需知道它像变量一样,默认是不可变的。因 此,需要写成 &mut guess 来使其可变,而不是 &guess。(第四章会更全面地讲解引用。) 使用 Result 类型来处理潜在的错误 我们还没有完全分析完这行代码。虽然我们已经讲到了第三行代码,但要注意:它仍是逻辑行 (虽然换行了但仍是语句)的一部分。后一部分是这个方法(method): 新概念:let、match、函数、使用外部 crate 等等, 接下来的几章,你会继续深入学习这些概念。第三章介绍大部分编程语言都有的概念,比如变 量、数据类型和函数,以及如何在 Rust 中使用它们。第四章探索所有权(ownership),这是 一个 Rust 同其他语言大不相同的特性。第五章讨论结构体和方法的语法,而第六章解释枚举。 37/562Rust 程序设计语言 简体中文版 常见编程概念0 码力 | 562 页 | 3.23 MB | 9 天前3Rust 程序设计语言简体中文版
的一个主要优势就是安全而简单的操纵引用。完成 当前程序并不需要了解如此多细节。现在,我们只需知道它像变量一样,默认是不可变的。因 此,需要写成 &mut guess 来使其可变,而不是 &guess 。(第四章会更全面的解释引用。) 使用 Result 类型来处理潜在的错误 我们还没有完全分析完这行代码。虽然我们已经讲到了第三行代码,但要注意:它仍是逻辑行 (虽然换行了但仍是语句)的一部分。后一部分是这个方法(method): 新概念:let 、match 、函数、使用外部 crate 等等, 接下来的几章,你会继续深入学习这些概念。第三章介绍大部分编程语言都有的概念,比如变 量、数据类型和函数,以及如何在 Rust 中使用它们。第四章探索所有权(ownership),这是 一个 Rust 同其他语言大不相同的功能。第五章讨论结构体和方法的语法,而第六章侧重解释 枚举。 41/600 Rust 程序设计语言 简体中文版 3 我们将数组的值写成在方括号内,用逗号分隔: 文件名:src/main.rs fn main() { let a = [1, 2, 3, 4, 5]; } 当你想要在栈(stack)而不是在堆(heap)上为数据分配空间(第四章将讨论栈与堆的更多 内容),或者是想要确保总是有固定数量的元素时,数组非常有用。但是数组并不如 vector 类 型灵活。vector 类型是标准库提供的一个 允许 增长和缩小长度的类似数组的集合类型。当不0 码力 | 600 页 | 12.99 MB | 1 年前3Rust 语言学习笔记
..................... 38 3.4.2 涉及到函数和结构体的借用检查器 ........................................... 39 第四章 面向对象编程 ............................................................................... 43 4.1 面向对象数据结构 'b) // 成立 上面是成立的,所以可以编译通过。 3.4.2.2 结构体中的生命周期 在 struct 中 Lifetime 同样重要。关于 rust 中 struct 使用请查看第四章。 我们来定义一个 Person 结构体。 struct Person { age: &u8, } 编译时我们会得到一个 error::2:8: 2:12 error: Lifetime 同理。 其他无论在函数还是在 struct 中,甚至在 enum 中,Lifetime 理论知识都是一 样的。希望大家可以慢慢体会和吸收,做到举一反三。 第四章 面向对象编程 4.1 面向对象数据结构 4.1.1 元祖 元祖表示一个大小、类型固定的有序数据组。 let y = (2, "hello world"); let x: (i32 0 码力 | 117 页 | 2.24 MB | 1 年前3
共 3 条
- 1