我能以某种方式修改“&”数组吗?
Can I somehow modify a '&' array?
基本上我有这个:
let mut sortedNumbers = numbers.clone();
sortedNumbers.sort_by(|a, b| b.rational.cmp(&a.rational));
其中 numbers
是 &[..]
我想以某种方式对 sortedNumbers
向量进行排序,但引用不可变。有什么想法吗?
如果numbers
是一个&[T]
,那么numbers.clone()
也是一个&[T]
,指的是同一个数组。你想要的是 numbers.to_vec()
或 numbers.to_owned()
,它给你一个 Vec<T>
,然后你可以修改它。
基本上我有这个:
let mut sortedNumbers = numbers.clone();
sortedNumbers.sort_by(|a, b| b.rational.cmp(&a.rational));
其中 numbers
是 &[..]
我想以某种方式对 sortedNumbers
向量进行排序,但引用不可变。有什么想法吗?
如果numbers
是一个&[T]
,那么numbers.clone()
也是一个&[T]
,指的是同一个数组。你想要的是 numbers.to_vec()
或 numbers.to_owned()
,它给你一个 Vec<T>
,然后你可以修改它。