Làm sao để dùng pattern matching để phân tích struct phức tạp trong Rust?
Làm sao để dùng pattern matching để phân tích struct phức tạp trong Rust?
Trong Rust, **pattern matching** cho phép phân tích và xử lý các `struct` phức tạp thông qua **match** và **if let**, giúp truy cập và đánh giá các trường dữ liệu một cách tường minh và hiệu quả.
```rust
struct ComplexStruct {
field1: i32,
field2: Option<String>,
}
let instance = ComplexStruct {
field1: 42,
field2: Some(String::from("Hello"))
};
match instance {
ComplexStruct { field1, field2: Some(ref text) } if field1 > 40 => {
println!("field1 is greater than 40 and field2 is Some: {}", text);
}
...
middle