Understanding Rust Ownership

Ownership is one of the key concepts in Rust that ensures memory safety without a garbage collector. In this post, we'll explore how ownership works in Rust.

The Rules of Ownership

  1. Each value in Rust has a variable that's called its owner.
  2. There can only be one owner at a time.
  3. When the owner goes out of scope, the value will be dropped.

Example

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

    // s1 is no longer valid here, and accessing it will cause a compile-time error
    println!("{}", s2);
}

In this example, s1 is moved to s2, making s1 invalid.

Conclusion

Understanding ownership is crucial for writing safe and efficient Rust code. Practice using ownership to get comfortable with this concept.