Rust-04-函数

作者 : admin 本文共1361个字,预计阅读时间需要4分钟 发布时间: 2024-06-6 共1人阅读

函数

说明

在Rust中,函数是组织代码和实现功能模块化的重要方式。函数可以接收参数并可能返回一个值。下面将详细探讨Rust语言中的函数:

函数定义
    基本形式:Rust的函数定义以fn关键字开始,后跟函数名、参数列表和函数体。函数体的开始和结束由花括号{}标记。函数名通常采用小写字母和下划线的组合。
    参数声明:如果函数需要参数,必须在括号内声明参数的名称和类型。例如,another_function(x: i32, y: i32)中x和y是参数名称,i32是它们的类型。
    返回值:Rust函数可以声明返回值类型,使用->符号后跟返回类型。如果没有明确声明返回类型,则函数为“纯过程”,不允许产生返回值。

函数体
    语句与表达式:Rust函数体由一系列语句组成,这些语句执行某些操作且没有返回值。而表达式则是有计算步骤且有返回值的。
    块表达式:可以在花括号{}内编写复杂的表达式,这种表达式块称为函数体表达式。块中的最后一个表达式的结果成为整个块表达式的值。
    嵌套函数:Rust支持在函数内部定义另一个函数,这称为嵌套函数定义。

函数调用
    无参数调用:没有参数的函数可以直接通过函数名加上括号()进行调用。
    带参数调用:如果函数定义时包含了参数,那么在调用函数时需要提供相应的参数值。
    返回值接收:当函数有返回值时,可以直接使用该返回值,或者选择忽略它。

命名风格
    小写与下划线:Rust的函数命名推荐使用小写字母和下划线的风格,这有助于提高代码的可读性。

编程范式
    函数式编程:Rust支持多种编程范式,但更倾向于函数式编程,这意味着函数在Rust中被视为"一等公民",可以作为数据传递。
    主入口函数:每个Rust程序都有一个名为main的函数,它是程序的入口点。

特殊函数
    main函数:Rust程序必须有一个名为main的函数作为程序的入口点。这个函数的返回类型是(),代表一个空的元组。

此外,在深入了解Rust函数的基础上,还需注意以下几点:

参数默认值:Rust不支持为函数参数设置默认值,这是与其他一些编程语言不同的地方。
可变性与所有权:Rust的函数参数默认是不可变的,除非显式地标记为可变。同时,Rust的所有权模型意味着你需要注意参数和返回值的所有权转移。
泛型函数:Rust支持泛型编程,允许你创建可以处理不同类型的函数。

总的来说,Rust语言中的函数是组织代码、实现功能模块化的强大工具。它们可以通过参数接收输入,并通过返回值提供输出。Rust的函数可以嵌套定义,支持表达式作为函数体,并且拥有严格的参数和返回值类型系统。了解Rust函数的这些特性对于编写安全、高效的Rust代码至关重要。

编程

fn main() {
    void(); // 无参

    parm(10,"hello"); // 有参

    let pow = retp(10); // 有返回值
    println!("{pow}");

    println!("{}", ret()) // 表达式
}

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

fn parm(x:i32,y:&str) {
    println!("{x},{y}");
}

fn retp(i:i32) -> i32 {
    return i * i;
}

fn ret() -> &'static str {
    "hello world"
    // 这里只能是表达式,不能是语句,如果写成 "hello world;"会产生错误
}
本站无任何商业行为
个人在线分享 » Rust-04-函数
E-->