MST

星途 面试题库

面试题:Rust中trait定义的基础用法

请阐述在Rust中如何定义一个trait,使其包含一个方法签名 `fn calculate(&self) -> i32`,并且实现该trait的类型必须有一个 `value` 字段用于参与计算。请给出具体的trait定义和一个简单结构体实现该trait的示例代码。
40.9万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
// 定义trait
trait Calculator {
    fn calculate(&self) -> i32;
}

// 定义结构体并实现Calculator trait
struct Number {
    value: i32,
}

impl Calculator for Number {
    fn calculate(&self) -> i32 {
        self.value * 2
    }
}