gpt4 book ai didi

rust - 如何借用一个展开的 Option

转载 作者:行者123 更新时间:2023-11-29 08:26:52 31 4
gpt4 key购买 nike

<分区>

我想使用 .iter_mut().map() 迭代一个向量:

fn calculate_distances(planes : &mut Vec<Aeroplane>, x: f64, y: f64) {
fn calculate_distance(x1: &f64, y1: &f64, x2: &f64, y2: &f64) -> f6 { ... }
planes.iter_mut().map(|a| if a.position.is_some() {
let pos: &Position = &a.position.unwrap();
a.distance = Some(calculate_distance(&x, &y, &pos.latitude, &pos.longitude));
});
}

Aeroplane 包含我的 Position 结构的实例:

struct Position {
latitude: f64,
longitude: f64,
}

据我所知,我只是借用了位置信息,并没有移出任何东西,但是借用检查器拒绝了我的代码:

error[E0507]: cannot move out of borrowed content
--> src/main.rs:145:31
|
4 | let pos: &Position = &a.position.unwrap();
| ^ cannot move out of borrowed content

我的错误在哪里?

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com