Advertisement
kolbka_

Untitled

Jan 13th, 2022
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.58 KB | None | 0 0
  1. namespace ptrs::unique {
  2. struct default_deleter {
  3.     void operator()(T* ptr) {
  4.         std::cout << "OK";
  5.         ptr = nullptr;
  6.         delete this;
  7.     }
  8. };
  9. template <typename T, typename Deleter = struct default_deleter>
  10. struct unique_ptr {
  11. //    struct default_deleter {
  12. //        void operator()(T* ptr) {
  13. //            std::cout << "OK";
  14. //            ptr = nullptr;
  15. //            delete this;
  16. //        }
  17. //    };
  18. private:
  19.     T *main_ptr;
  20.     Deleter main_del;
  21.  
  22. public:
  23.     unique_ptr(T *cur_ptr, Deleter tmp) : main_ptr(cur_ptr), main_del(std::move(tmp)){
  24.  
  25.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement