Structtest
This commit is contained in:
6
BasicSyntax/structtest/Cargo.toml
Normal file
6
BasicSyntax/structtest/Cargo.toml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[package]
|
||||||
|
name = "structtest"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2024"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
BIN
BasicSyntax/structtest/src/main.exe
Normal file
BIN
BasicSyntax/structtest/src/main.exe
Normal file
Binary file not shown.
BIN
BasicSyntax/structtest/src/main.pdb
Normal file
BIN
BasicSyntax/structtest/src/main.pdb
Normal file
Binary file not shown.
54
BasicSyntax/structtest/src/main.rs
Normal file
54
BasicSyntax/structtest/src/main.rs
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
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();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user