在方法中将字符串附加到结构的字段的“ Rust方法”是什么?

时间:2019-07-05 17:32:07

标签: rust

它必须是非常基本的东西,但对我而言不起作用。

这就是我得到的;

#[derive(Debug)]
struct Simple {
    s: String,
}

impl Simple {
    fn greet_more(&mut self) {
        self.s = self.s + " Hello";
    }
}

它失败并显示:

error[E0507]: cannot move out of borrowed content
 --> src/lib.rs:9:18
  |
9 |         self.s = self.s + " Hello";
  |                  ^^^^^^ cannot move out of borrowed content

我发现解决方案是在字符串上使用.clone()

impl Simple {
    fn greet_more(&mut self) {
        self.s = self.s.clone() + " Hello";
    }
}

我这样做可以避免什么样的“风险”?没有.clone()时出现错误的原因是什么?

0 个答案:

没有答案