enum Class{ AC, BC, CC, DC } struct Student{ name: String, age: i64, score: f32, class: Class } trait Action{ //接口类 fn show_age(&self) -> i64 ; fn show_class(&self); } impl Action for Student{ fn show_age(&self) -> i64 { return self.age; } fn show_class(&self){ match self.class{ Class::AC => println!("Class A"), Class::BC => println!("Class B"), Class::CC => println!("Class C"), Class::DC => println!("Class D"), _ => println!("No Class!") } } } impl Student{ fn show_score(&self) -> f32 { return self.score; } fn prt(&self){ println!("Name: {0}, Age: {1}, Score: {2}", self.name, self.age, self.score); } } fn main() { let s= Student{ name : "Van".to_string(), age : 18, score : 99.9, class : Class::AC }; println!("{}", s.show_score()); println!("{}", s.show_age()); s.prt(); }