// 函数声明周期 // fn f(x: &str, y: &str) -> &str { fn f<'a>(x: &'a str, y: &'a str) -> &'a str { if x.len() > y.len() { x } else { y } } fn main() { let s1 = String::from("root"); let s2 = String::from("ace"); // 自动转换 // let s3 = f(&s1, &s2); // 手动转换 let s3 = f(s1.as_str(), s2.as_str()); println!("s3: {}", s3); }