Mega Code Archive

 
Categories / C++ Tutorial / Pointer
 

Demonstrate an auto_ptr

#include <iostream> #include <memory> using namespace std; class MyClass { public:   MyClass() {      cout << "constructing\n";   }   ~MyClass() {      cout << "destructing\n";   }   void f() {      cout << "f()\n";   } }; int main() {   auto_ptr<MyClass> p1(new MyClass), p2;   p2 = p1; // transfer ownership   p2->f();   // can assign to a normal pointer   MyClass *ptr = p2.get();   ptr->f();   return 0; } constructing f() destructing