语句与表达式

未匹配的标注

语句与表达式

示例

`

fn main() {

let x = 5u32;

let y = {

 let x_squared = x * x;

 let x_cube = x_squared * x;

 // 下面表达式的值将被赋给 `y`

 x_cube + x_squared + x

};

let z = {

 // 分号让表达式变成了语句,因此返回的不再是表达式 `2 * x` 的值,而是语句的值 `()`

 2 * x;

};

println!("x is {:?}", x);

println!("y is {:?}", y);

println!("z is {:?}", z);

}

`

练习

  1. 🌟🌟

`

// 使用两种方法让代码工作起来

fn main() {

let v = {

let mut x = 1;

x += 2

};

assert_eq!(v, 3);

}

`

  1. 🌟

`

fn main() {

let v = (let x = 3);

assert!(v == 3);

}

`

  1. 🌟

`

fn main() {

let s = sum(1 , 2);

assert_eq!(s, 3);

}

fn sum(x: i32, y: i32) -> i32 {

x + y;

}

`

你可以在这里找到答案(在 solutions 路径下)

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~