MST

星途 面试题库

面试题:Rust中如何在枚举上实现trait并进行简单应用

定义一个Rust枚举`Color`,包含`Red`、`Green`、`Blue`三个变体。然后定义一个`trait` `PrintColor`,包含一个方法`print`用于打印颜色信息。在`Color`枚举上实现`PrintColor` trait,并在`main`函数中创建不同颜色的实例并调用`print`方法。
48.7万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
// 定义Color枚举
enum Color {
    Red,
    Green,
    Blue,
}

// 定义PrintColor trait
trait PrintColor {
    fn print(&self);
}

// 在Color枚举上实现PrintColor trait
impl PrintColor for Color {
    fn print(&self) {
        match self {
            Color::Red => println!("红色"),
            Color::Green => println!("绿色"),
            Color::Blue => println!("蓝色"),
        }
    }
}

fn main() {
    let red = Color::Red;
    let green = Color::Green;
    let blue = Color::Blue;

    red.print();
    green.print();
    blue.print();
}