Я хочу создать список, содержащий структуры. Затем получить конкретный элемент из списка и вернуться в функцию. Что я делаю неправильно. Я очень плохо знаком с этим языком, но я попытался взглянуть на документацию, но я бы хотел помочь. Кто-нибудь знает, как это сделать?
struct Foo{
id: u8,
name: String
}
fn get_foo_by_id(id: u8) -> Foo {
let mut foo_1 = Attraction {
id: 2,
name: String::from("Foo 1"),
};
let mut foo_2 = Attraction {
id: 2,
name: String::from("Foo 2"),
};
let mut foo_3 = Attraction {
id: 3,
name: String::from("Foo 3"),
};
let mut listOfFoos: Vec<Foo> = Vec::new();
listOfFoos.push(foo_1);
listOfFoos.push(foo_2);
listOfFoos.push(foo_3);
let mut iter = listOfFoos.into_iter().find(|a| a.id == id);
println!("{}",iter.name); //Error: no field `name` on type `std::option::Option<Attraction>`
iter //Error: ^^^^ expected struct `Foo`, found enum `std::option::Option`
}