我可以以某种方式修改 '&' 数组吗?

时间:2021-03-25 09:35:58

标签: rust ownership borrowing

所以基本上我有这个:

let mut sortedNumbers = numbers.clone();
    
sortedNumbers.sort_by(|a, b| b.rational.cmp(&a.rational));

其中 numbers&[..]

我想以某种方式对 sortedNumbers 向量进行排序,但引用不是可变的。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

如果 numbers 是一个 &[T],那么 numbers.clone() 也是一个 &[T],指的是同一个数组。您需要的是 numbers.to_vec()numbers.to_owned(),它们为您提供一个 Vec<T>,然后您可以对其进行修改。