rust 所有权 -9

所有权(系统)是 Rust 最独特的功能,它让 Rust 无需垃圾回收(GC)即可保障内存安全。

 

所有权规则

首先,让我们看一下所有权规则。在通过示例进行说明时,请牢记以下规则:

  • Rust中的每个值都有一个变量,称为其所有者
  • 一次只能有一个所有者。
  • 当所有者超出范围时,该值将被删除。

大概思路就是两个水杯A,B和一杯水,A中的水倒入B,水的所有权就是B,A失去了水的所有权,这时你想从A杯里喝水,显然是不可能的了。

如果这个场景结束了呢(方法执行结束)

按照以往语言的经验,例如JAVA/py/go,被GC清理,C/C++需要编程人员手动处理

而Rust不用手动处理和GC清理,编译器处理:当所有权消失时清理。

实现一个数字交换的方法

fn main() {
    let mut num1 =  1;
    let mut num2 = 2;
    println!("num1:{} , num2:{}", num1,num2);
    let mut  num3 = num1;
    num1 = num2;
    num2 = num3;
    println!("num1:{} , num2:{}", num1,num2);
}

猜你喜欢

转载自blog.csdn.net/qq_39308071/article/details/112209765