study_rust_example/struct_related/
define_init_struct.rs1#[derive(Debug)]
2struct User {
3 user_id: String,
4 user_name: String,
5 age: u8,
6 active: bool,
7}
8
9struct Color(i32, i32, i32);
26struct Point(i32, i32);
27fn build_user(user_name: String, user_id: String, age: u8) -> User {
28 User {
29 user_name,
30 user_id,
31 age,
32 active: true,
33 }
34}
35fn create_user_and_modify(name: &str) -> User {
36 let mut user = build_user(String::from("user_name"), String::from("user_id"), 28);
37 user.user_name = name.to_string();
38 return user;
39}
40pub fn define_init_struct_study() {
41 let name = String::from("Jack");
42 let user = create_user_and_modify(&name);
43 let user2 = User { age: 18, ..user };
44 let color = Color(32, 34, 43);
45 let point = Point(23, -23);
46 dbg!(&user2);
47}