Skip to content

Commit

Permalink
fix(move_semantics5): change &mut *y to &mut x (#814)
Browse files Browse the repository at this point in the history
Instead of having to explain why 
```rs
let mut x = 100; 
let y = &mut x;
let mut z_owned = *y;
let z = &mut z_owned;
*y += 100;
*z += 1000;
```
and 
```rs
let mut x = 100; 
let y = &mut x;
let z = &mut *y;
*y += 100;
*z += 1000;
```
are different, you still get the point across about having only one mutable reference.
As it stands, this exercise does too much (dereferencing and having only one mutable reference), and by doing so confuses people.

Example of someone being confused by this:
<https://discord.com/channels/273534239310479360/273541522815713281/872689531428692040>
  • Loading branch information
frogtd committed Sep 25, 2021
1 parent db9d7a9 commit d75759e
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion exercises/move_semantics/move_semantics5.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
fn main() {
let mut x = 100;
let y = &mut x;
let z = &mut *y;
let z = &mut x;
*y += 100;
*z += 1000;
assert_eq!(x, 1200);
Expand Down

0 comments on commit d75759e

Please sign in to comment.