How to automatically deleted an object when he get out of scope in C++

1 Answer

0 votes
#include <iostream>

class Example {
public:
    Example() {
         std::cout << "Example()" << "\n";
    }
     
    ~Example() {
         std::cout << "~Example()" << "\n";
    }
};

class ScopePointer {
private:
      Example* m_Ptr;  
public:
    ScopePointer(Example *p) : m_Ptr(p) {}
     
    ~ScopePointer() {
         delete m_Ptr;
    }
};
  
 
int main() {
    {
        ScopePointer sp = new Example();
    }
}
   
   
   
   
/*
run:
   
Example()
~Example()
   
*/

 



answered Feb 4, 2023 by avibootz
...