Этот код работает правильно и выдает результат: 14
:
fn main() {
let v: i32 = vec![1, 2, 3].iter().map(|x| x * x).sum();
println!("{}", v);
}
детская площадка
Я пытаюсь заменить x * x
на powi(2)
, поэтому я попробовал оба варианта ниже, но ни один из них не работает:
let v1: i32 = vec![1, 2, 3].iter().map(|x| x.powi(2)).sum();
let v2: i32 = vec![1, 2, 3].iter().map(|&x| &x.powi(2)).sum();
Я также разместил это на форуме пользователя Rust .