9. 函数、方法和闭包:function/method/closure
函数用于执行一个任务或计算一个值。 函数使用 fn 声明, 使用 -> 来指定返回值类型,没有指定返回值时默认为 unit type 类型和值 ()。 函数签名的每个参数都要标注类型,但 lifetime 可以使用 '_ 来让编译器自动推导(如根据 lifetime elision rule),如:
8. 模式匹配:match pattern
模式匹配 match expression {} 是一个表达式,可用于变量赋值: expression 的结果可以是复杂类型, 如 struct、enum、tuple 等; 各 branch 是逗号分割的 pattern => {statements;},; 如果是单条语句,则可以省略大括号,如 p
7. 流程控制:flow control
Rust 是表达式语言,let、let-else、if-else,if-let,while-let,match,loop,block 等都是表达式,可以有返回值,可用于变量赋值。 // 语句没有返回值,所以下面代码编译时报错: let x = (let y = 5); Rust 控制流结构包括:i