gpt4 book ai didi

string - 为什么我需要 to_string 函数的引用?

转载 作者:行者123 更新时间:2023-12-03 07:51:20 25 4
gpt4 key购买 nike

我是 Rust 新手。在尝试连接字符串文字和整数时,由于“to_string”函数,我遇到了许多错误。之后意识到我需要在整数前面放置一个引用/与号(&)。但是,我不明白为什么。你能解释一下为什么我需要在 to_string 函数的整数前面放置一个引用符号吗?我在下面编写了示例代码。

fn main() {
let number = 42;
let text = "The answer is";
let result = text.to_owned() + " " + &number.to_string();
println!("{}", result);
}

最佳答案

因为 +字符串运算符取 String&str而不是StringString ,如that is what the std::ops::Add implementation takes .

这是因为要有效地连接字符串,您需要拥有其中一个字符串,因此我们可以重用其缓冲区并可能避免分配,但您不需要拥有另一个字符串,引用是足够的。从技术上讲,没有理由 impl Add<String> for &str也无法提供,它根本不存在。

关于string - 为什么我需要 to_string 函数的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77082738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com