Guest User

Untitled

a guest
Dec 17th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.41 KB | None | 0 0
  1. #[derive(Debug)]
  2. struct MyStruct{
  3. myval: usize
  4. }
  5. fn main() {
  6. let s = MyStruct{myval:1};
  7. println!("{:?}", change_it_2(s));
  8. }
  9.  
  10. fn change_it_1(s: MyStruct) -> MyStruct {
  11. // s.myval=2; //cannot assign, compiler error!
  12. s
  13. }
  14.  
  15. fn change_it_2(s: MyStruct) -> MyStruct {
  16. change_it_3(s) //Completly fine, s will be changed in change_it_3
  17. }
  18.  
  19. fn change_it_3(mut s: MyStruct) -> MyStruct {
  20. s.myval = 2;
  21. s
  22. }
Add Comment
Please, Sign In to add comment