Rust 区分语句和表达式, Rust 是基于表达式的语言:
-
语句:执行动作并且不返回值
- 使用 let 声明变量是语句,所以 let 语句不返回值,也就不能像 Python 那样将 let 语句赋值给其他变量
- 函数声明也是语句
-
表达式:计算并返回值,不以分号(;)结尾
-
5 + 6
是一个表达式,计算并返回值11
-
表达式可以作为语句的一部分
-
函数调用是表达式
-
宏调用是表达式
-
用
{}
创建的块也是表达式let x = { let y = 6; y + 5 }
-
if
loop
while
for
是表达式
-
在表达式后面增加分号(;)可以将一个表达式转为语句。