MST

星途 面试题库

面试题:Rust 函数参数与返回值相关问题

在Rust中定义一个函数,该函数接受两个整数参数,返回它们的和与差(使用元组返回)。并解释函数参数的生命周期标注在这种简单场景下是否必要,为什么?
47.0万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
fn add_and_subtract(a: i32, b: i32) -> (i32, i32) {
    let sum = a + b;
    let diff = a - b;
    (sum, diff)
}

在这种简单场景下,函数参数的生命周期标注不是必要的。原因是这里的参数类型 i32 是简单值类型,它们在函数调用时是按值传递的,而不是通过引用传递。值类型有自己独立的内存空间,不依赖于外部作用域的生命周期。因此,Rust的编译器可以自动推导出合适的生命周期,无需手动标注。