Advertisement
Guest User

smartpointer1

a guest
Jun 22nd, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.49 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. template <typename T>
  6.  
  7. class SmartPtr{
  8. T *ptr;
  9. public:
  10. explicit SmartPtr(T *p=NULL){
  11. cout<<"Utworzono"<<endl;
  12. ptr = p;
  13. }
  14. ~SmartPtr(){
  15. cout<<"Usunieto"<<endl;
  16. delete(ptr);
  17. }
  18. T &operator *(){
  19. return *ptr;
  20. }
  21. T *operator ->(){
  22. return ptr;
  23. }
  24. };
  25.  
  26. int main()
  27. {
  28. SmartPtr <double> ptr(new double());
  29. *ptr=10.02;
  30. cout<<*ptr;
  31. return 0;
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement