【发布时间】:2017-07-13 01:30:29
【问题描述】:
我在尝试返回字符串时遇到了一些麻烦。我一直在尝试各种方法来定义我的变量和返回值,以便我可以返回字符串原语,但我得到了一系列与生命周期相关的错误消息。
pub fn raindrops(int: u64) -> &'a str {
let mut out = String::new();
if int % 3 == 0 {
out.push_str("Pling");
}
if int % 5 == 0 {
out.push_str("Plang");
}
if int % 7 == 0 {
out.push_str("Plong");
}
if out.is_empty() {
out.push_str(&format!("{}", int));
}
out.shrink_to_fit();
return out.as_str();
}
错误:
error[E0261]: use of undeclared lifetime name `'a`
--> src/lib.rs:1:32
|
1 | pub fn raindrops(int: u64) -> &'a str {
| ^^ undeclared lifetime
error: aborting due to previous error
error: Could not compile `raindrops`.
Build failed, waiting for other jobs to finish...
error[E0261]: use of undeclared lifetime name `'a`
--> src/lib.rs:1:32
|
1 | pub fn raindrops(int: u64) -> &'a str {
| ^^ undeclared lifetime
【问题讨论】:
-
你可能会觉得这很有趣chrismorgan.info/blog/rust-fizzbuzz.html
标签: rust