gpt4 book ai didi

rust - 如何在Rust中将Rc 转换为String

转载 作者:行者123 更新时间:2023-12-03 11:35:40 27 4
gpt4 key购买 nike

我目前正在尝试在Rust中构建一个解释器,以更好地理解它(解释器和Rust)。
我将输入字符串转换为Rc<str>,在编译的后期,我想从其中的一部分创建一个String。我找不到任何可以在文档中提供帮助的东西,所以我写了一个看起来像这样的简单函数。

fn string_from_rc(r: &std::rc::Rc<str>) -> String {
let chars = r.chars();
let mut s = String::new();
for c in chars {
s.push(c);
}
s
}

但我确信有更好的方法来解决此问题。

最佳答案

.to_string()就足够了:

fn string_from_rc(r: &std::rc::Rc<str>) -> String {
r.to_string()
}

等效的也将是 .to_owned()值上调用的 str。要记住的一件事很简单:如果您有一个 &Rc<str>,那么 &str的所有方法仍然可用,但是在某些情况下,智能指针类型的特征方法(此处为 Rc)会妨碍您的使用。
.to_string()来自 ToString特性,它是 str当然实现的。

关于rust - 如何在Rust中将Rc <str>转换为String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61350030/

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