feat: Add move_semantics5 exercise.
This commit is contained in:
parent
7cd635fa84
commit
528e45ea4c
14
exercises/move_semantics/move_semantics5.rs
Normal file
14
exercises/move_semantics/move_semantics5.rs
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
// move_semantics5.rs
|
||||||
|
// Make me compile without adding any newlines or removing any of the lines.
|
||||||
|
// Execute `rustlings hint move_semantics5` for hints :)
|
||||||
|
|
||||||
|
// I AM NOT DONE
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let mut x = 100;
|
||||||
|
let y = &mut x;
|
||||||
|
let z = &mut *y;
|
||||||
|
*y += 100;
|
||||||
|
*z += 1000;
|
||||||
|
assert_eq!(x, 1200);
|
||||||
|
}
|
|
@ -210,6 +210,13 @@ So the end goal is to:
|
||||||
- since we're not creating a new vec in `main` anymore, we need to create
|
- since we're not creating a new vec in `main` anymore, we need to create
|
||||||
a new vec in `fill_vec`, similarly to the way we did in `main`"""
|
a new vec in `fill_vec`, similarly to the way we did in `main`"""
|
||||||
|
|
||||||
|
[[exercises]]
|
||||||
|
name = "move_semantics5"
|
||||||
|
path = "exercises/move_semantics/move_semantics5.rs"
|
||||||
|
mode = "compile"
|
||||||
|
hint = """Carefully reason about the range in which each mutable reference is in vogue. Does updating the value of referrent (x) immediately after the mutable reference is taken helps ? Read more about 'Mutable Referenes' in the book's section References and Borrowing': https://doc.rust-lang.org/book/ch04-02-references-and-borrowing.html#mutable-references."""
|
||||||
|
|
||||||
|
|
||||||
# PRIMITIVE TYPES
|
# PRIMITIVE TYPES
|
||||||
|
|
||||||
[[exercises]]
|
[[exercises]]
|
||||||
|
|
Loading…
Reference in a new issue