RUST 学习日记 第11课 ——引用与借用

75 阅读1分钟

1 借用与引用

Rust可以通过转移所有权的方式获取一个值,也可以获取某个变量的指针或者引用,或者变量的引用,称之为借用。

2 引用和解引用

fn main(){
    let x = 5;
    let y = &x;
    assert_eq!(5,x);
    assert_eq!(5,*y);//解引用
}

3 不可变引用

fn main() {
    let s1 = String::from("hello");

    let len = calculate_length(&s1);

    println!("The length of '{}' is {}.", s1, len);
}

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

image.png

4 可变应用

fn main() {
    let mut s = String::from("hello");

    change(&mut s);
}

fn change(some_string: &mut String) {
    some_string.push_str(", world");
}

源码地址