如何从&& mut Foo中可靠地借用参考文献?

时间:2017-10-11 13:02:48

标签: rust

struct A;
impl A {
    fn foo(&mut self) {}
}

fn main() {
    let mut a = A;
    let x = &{ &mut a };
    x.foo();
}
error[E0389]: cannot borrow data mutably in a `&` reference
 --> src/main.rs:9:5
  |
9 |     x.foo();
  |     ^ assignment into an immutable reference

1 个答案:

答案 0 :(得分:1)

你做不到。您有一个不可变引用,这意味着引用后面的所有从引用所有者的角度来看是不可变的。

如果情况并非如此,那么每次只对每件事物进行单一可变引用的整个概念将是微不足道的。