Rust中的所有权,引用和借用

Posted aguncn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rust中的所有权,引用和借用相关的知识,希望对你有一定的参考价值。

这个有意思,指针解释获新生!!!

fn main() 
    let mut s = String::from("hello");
    s.push_str(", world!");
    println!("", s);

    let s1 = String::from("hello");
    let (s2, len) = calculate_len(s1);
    println!("The len of ‘‘ is .", s2, len);

    let s1 = String::from("hello");
    let len = calculate_length(&s1);
    println!("The length of ‘‘ is .", s1, len);


fn calculate_len(s: String) -> (String, usize) 
    let length = s.len();
    (s, length)



fn calculate_length(s: &String) -> usize 
    s.len()

技术图片

技术图片

以上是关于Rust中的所有权,引用和借用的主要内容,如果未能解决你的问题,请参考以下文章

Rust学习教程 - 引用与借用

Rust语言圣经11 - 引用与借用

Rust编程语言入门之智能指针

Rust Deref与自动解引用

不借用的API在哪些场景下是首选?

是否可以在 Rust 中返回借用或拥有的类型?