MST

星途 面试题库

面试题:Rust类型推断在函数参数中的应用

假设有一个函数,它接受两个参数并返回它们的和。请使用Rust编写这个函数,并解释Rust是如何对函数参数进行类型推断的。函数示例:`fn add(a, b) { a + b }`(这里未指定类型,需你补充完善并解释类型推断过程)
26.9万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
fn add(a: i32, b: i32) -> i32 {
    a + b
}

在Rust中,函数参数的类型推断主要依赖于函数的使用上下文。例如,如果在调用add函数时传入的是整数类型的值,编译器会推断ab为整数类型。当未指定类型时,编译器需要足够的信息来确定类型。这里明确指定abi32类型,返回值也为i32类型。如果不指定类型,编译器无法知道应该使用哪种整数类型(如i8i16等),就会报错。只有在上下文中有足够信息让编译器确定类型时,类型推断才能生效。比如,如果函数体中有其他依赖特定类型的操作,编译器可据此推断参数类型。