Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace ptrs::unique {
- struct default_deleter {
- void operator()(T* ptr) {
- std::cout << "OK";
- ptr = nullptr;
- delete this;
- }
- };
- template <typename T, typename Deleter = struct default_deleter>
- struct unique_ptr {
- // struct default_deleter {
- // void operator()(T* ptr) {
- // std::cout << "OK";
- // ptr = nullptr;
- // delete this;
- // }
- // };
- private:
- T *main_ptr;
- Deleter main_del;
- public:
- unique_ptr(T *cur_ptr, Deleter tmp) : main_ptr(cur_ptr), main_del(std::move(tmp)){
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement