【发布时间】:2015-11-22 14:20:32
【问题描述】:
简单代码:
fn foo() -> Vec<&'static str> {
let mut vec = Vec::new();
let mut string = String::new();
// doing something with string...
vec.push(string.as_str());
return vector; // error here: string doesn't live long enough
}
我有一个问题,我需要用字符串处理并在Vec 中以 str 的形式返回它。问题是绑定字符串的寿命不够长,因为它在 foo 之后超出了范围。我很困惑,我真的不知道如何解决这个问题。
【问题讨论】:
标签: string vector rust lifetime