fork download
  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5.  
  6. class shared_ptr
  7. {
  8. public:
  9. int *pointer;
  10. public:
  11. shared_ptr()
  12. {
  13. pointer = new int;
  14. }
  15. ~shared_ptr()
  16. {
  17. delete pointer;
  18. }
  19. int operator* ();
  20. int* operator= (shared_ptr&);
  21. };
  22.  
  23. int shared_ptr:: operator* ()
  24. {
  25. return *(this->pointer);
  26. }
  27.  
  28. int* shared_ptr:: operator= (shared_ptr& temp)
  29. {
  30. return (temp.pointer);
  31. }
  32.  
  33. int main()
  34. {
  35. shared_ptr s1, s2;
  36. *(s1.pointer) = 10;
  37. int* k = (s1 = s2);
  38. }
Success #stdin #stdout 0s 2980KB
stdin
Standard input is empty
stdout
Standard output is empty