gpt4 book ai didi

rust - 如何筛选~[T]

转载 作者:行者123 更新时间:2023-11-29 07:58:24 24 4
gpt4 key购买 nike

这似乎对我不起作用 (rust-0.10)

let x : ~[uint] = ~[1,2,3];
let sieved: ~[uint] = x.iter().filter(|&n| 3 % n == 0).collect();
...
prob0003.rs:49:77: 49:78 error: mismatched types: expected `<generic integer #5>` but found `&uint` (expected &-ptr but found integral variable)
prob0003.rs:49 let x : ~[uint] = ~[1,2,3]; let sieved: ~[uint] = x.iter().filter(|&n| 3 % n == 0).collect();

最佳答案

问题出在您的 collect() 调用中。迭代器在 &uint 之上,因此 collect() 会期望产生类似 ~[&uint] 的东西。

您应该将其更改为使用 move_iter() 而不是 iter(),或者放入 .map(|&n| n).

关于rust - 如何筛选~[T],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23336465/

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