示例:
struct Foo<V> {
value: V,
}
impl<V> Foo<V> {
fn insert(&mut self, value: V) -> Option<V> {
// move occurs because `self.value` has type `V`, which does not implement the `Copy` trait
let v = self.value;
self.value = value;
Some(v)
}
}
我知道为什么铁 rust 会抱怨这一点,有什么替代方案可以实现这一点吗?