函数定义

Rust中使用fn关键字来标注用户接下来的动作是要定义函数

fn foo() {
    // do something
}
/// 一个函数有fn关键后边紧跟函数名,参数列表,返回值类型组成
/// 其中参数列表和返回值是可选的
/// 函数的形参必须标注类型
/// 函数的返回值用-> type来表示

fn bar(x: i32) -> i32 {
    x + 2
}
语句和表达式

Rust是一门由语句和表达式组成的编程语言,所以有必要知道语句和表达式的区别

语句: 指的是那些执行操作但不返回值的指令

表达式: 指的是会计算并产生值的指令

一等公民

与其他语言一样Rust中的函数也是一种类型,一等公民的存在,这意味着你可以把一个函数赋值给以变量或将函数当参数一样传递给其他函数,也可以作为其他函数的返回值返回

fn hello() {
    println!("hello");
}

// type Opt = fn(i32, i32) -> i32;

fn main() {
    let fn_ptr: fn() = hello;
    println!("{:p}", fn_ptr);

    let other_fn = hello;
    fn_ptr();
    other_fn();
}

that's all

results matching ""

    No results matching ""