面试题答案
一键面试enum Message {
Quit,
Move { x: i32, y: i32 },
Write(String),
ChangeColor(i32, i32, i32),
}
fn process_message(msg: Message) -> String {
match msg {
Message::Quit => "Program is quitting".to_string(),
Message::Move { x, y } => format!("Moving to coordinates: ({}, {})", x, y),
Message::Write(s) => {
if s.is_empty() {
"No content to write".to_string()
} else {
s
}
},
Message::ChangeColor(r, g, b) => format!("Color RGB: ({}, {}, {})", r, g, b),
}
}