Lesson Goal and Plan

Hello, Coders! Today, we'll examine two intriguing Rust concepts: variable references and mutable references, essential for efficient memory management. You'll learn about them through an example of Rust code employing mutable references. Off we go!

Introduction to Variable References

Imagine we're stepping into the world of Rust's pointers, which act as directional signs to memory locations, much like addresses in a neighborhood.

A variable reference is like having a house address—it guides you to where the house is located. Just as you can visit and look at the house based on its address, but not alter it, a variable reference allows you to see a value without changing it.

To create a reference to a variable, add & before the variable name. To dereference a variable and get the value of a reference variable, add * before the variable name.

Here's how we might express this in Rust:

In this case, y has the "address" that points to where x is in memory, much like having directions to a house. z contains the value stored at y.

Introduction to Mutable References

Consider this scenario in Rust:

Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal