Rust đã quyết định không cho phép các chữ nổi trong các mẫu: Matching on floating-point literal values is totally allowed and shouldn't be #41255. Nó hiện là một cảnh báo nhưng sẽ là một lỗi nghiêm trọng trong một bản phát hành trong tương lai.Các giải pháp thay thế cho các điểm nổi phù hợp
Câu hỏi của tôi là sau đó, làm thế nào để đạt được tương đương ví dụ với đoạn mã sau ?:
struct Point {
x: f64,
y: f64,
}
let point = Point {x: 5.0, y: 4.0};
match point {
Point {x: 5.0 , y} => println!("y is {} when x is 5", y), // Causes warning
_ => println!("x is not 5")
}
là nó bây giờ không thể? Tôi có cần thay đổi cách suy nghĩ về các mẫu không? Có cách nào khác phù hợp với nó không?