Guest User

Untitled

a guest
Apr 15th, 2020
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.54 KB | None | 0 0
  1. #include <iostream>
  2. #include <memory>
  3.  
  4. using namespace std;
  5.  
  6. void decrement(unique_ptr<int> &n);
  7. unique_ptr<int> increment(unique_ptr<int> n);
  8.  
  9. int
  10. main()
  11. {
  12.   unique_ptr<int> n(new int(10));
  13.  
  14.   cout << "*n = " << *n << endl;
  15.    
  16.   decrement(n);
  17.  
  18.   cout << "*n = " << *n << endl;
  19.  
  20.   n = std::move(increment(std::move(n)));
  21.  
  22.   cout << "*n = " << *n << endl;
  23.  
  24.   return 0;
  25.   // n will die here
  26. }
  27.  
  28. void
  29. decrement(unique_ptr<int> &n)
  30. {
  31.   --(*n);
  32. }
  33.  
  34. unique_ptr<int>
  35. increment(unique_ptr<int> n)
  36. {
  37.   ++(*n);
  38.   return n;
  39. }
Advertisement
Add Comment
Please, Sign In to add comment