美文网首页
[Rust]字符串

[Rust]字符串

作者: Tsun424 | 来源:发表于2020-01-10 19:12 被阅读0次

Rust中字符串涉及两种类型:&strString

&str

str是Rust的内置类型,&str是对str的借用。本质上&str是一个&[u8]切片,所以它没有所有权,它无权给这个字符串扩容或者释放内存。

String

String存储在Vec<u8>中,它有管理的内存空间的所有权,所以可以增加内容。String实现了Deref<Target=str>的trait,所以在很多情况下,&String类型可以被编译器自动转换为&str类型。

fn accept_str(substr: &mut str) {
    println!("substr: {}", substr);
}

fn main() {
    let mut s = String::from("Hello World");
    accept_str(&mut s);
    println!("{}", s);
}

相关文章

网友评论

      本文标题:[Rust]字符串

      本文链接:https://www.haomeiwen.com/subject/jmlmactx.html