声明
使用 fn
关键字
Rust命名规范(snake case):
- 针对函数和变量名,所有字母都是小写,单词之间使用下划线分开
参数
- 在函数签名里,必须声明每个参数的类型
语句/表达式
- 函数体由一系列语句组成,可选的由一个表达式结束
- Rust是一个基于表达式的语言
- 语句是执行一些动作的指令
- 表达式会计算产生一个值
- 函数的定义也是语句
- 语句没有返回值,所以不可以使用let将一个语句赋给一个变量
// 块表达式
let y = {
let x = 1;
x + 3
}
// y等于块表达式最后一个值即x + 3 = 4
// 如果x + 3后加上分号,那么x + 3就变成语句了,分号后面没有返回值,默认就是空的Tuple即()
fn f() -> i32{
5
}
fn main(){
let res = f();// res为5
}
返回值
- 在
->
符号后边声明函数返回值的类型,但是不可以为返回值命名 - 在Rust里面,返回值就是函数体最后一个表达式的值
- 若想提前返回,需使用
return
关键字,并指定一个值 - 大多数函数都是默认使用最后一个表达式作为返回值