Rust 05

///
/// https://kaisery.github.io/trpl-zh-cn/ch04-02-references-and-borrowing.html
fn main() {
    let mut s = String::from("hello");

    let r1 = &s; //没问题
    let r2 = &s; //没问题
    let r3 = &mut s; //大问题

    println!("{}, {}, and {}",r1,r2,r3);
}

这里记录的是Rust的借用,可以看到let r3 = &mut s;时报错.

所有程序都必须管理其运行时使用计算机内存的方式。一些语言中具有垃圾回收机制,在程序运行时有规律地寻找不再使用的内存;在另一些语言中,程序员必须亲自分配和释放内存。Rust 则选择了第三种方式:通过所有权系统管理内存,编译器在编译时会根据一系列的规则进行检查。如果违反了任何这些规则,程序都不能编译。在运行时,所有权系统的任何功能都不会减慢程序。

posted @ 2024-04-15 10:32  ukyo--BlackJesus  阅读(2)  评论(0编辑  收藏  举报