面试题答案
一键面试1. Trait的定义方式
在Rust中,使用 trait
关键字来定义trait。语法如下:
trait TraitName {
// 方法签名
fn method_name(&self);
}
例如,定义一个 Animal
trait:
trait Animal {
fn speak(&self);
}
2. 为结构体实现自定义trait
假设我们有一个 Dog
结构体,为它实现 Animal
trait:
struct Dog {
name: String,
}
impl Animal for Dog {
fn speak(&self) {
println!("{} says Woof!", self.name);
}
}
3. 使用该实现的trait
fn main() {
let my_dog = Dog { name: "Buddy".to_string() };
my_dog.speak();
}
在 main
函数中,我们创建了一个 Dog
实例,并调用了实现自 Animal
trait 的 speak
方法。