MST

星途 面试题库

面试题:Rust泛型结构体与trait的结合应用

定义一个泛型结构体`Container`,它包含一个泛型类型的成员变量。然后定义一个`trait` `Processor`,其中有一个方法用于处理`Container`中的数据。最后实现`Processor` trait 针对`Container`结构体,要求能够正确处理不同类型的数据,并且要考虑类型约束。
10.3万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
// 定义泛型结构体
struct Container<T> {
    data: T,
}

// 定义trait
trait Processor<T> {
    fn process(&self, container: &Container<T>) -> T;
}

// 实现Processor trait针对Container结构体
impl<T: std::fmt::Debug + Clone> Processor<T> for Container<T> {
    fn process(&self, container: &Container<T>) -> T {
        // 这里简单返回数据的克隆
        container.data.clone()
    }
}