VectorDest.cc
#include <iostream> #include <vector> using namespace std; class X { int p; public: //constructor: X( int q ) { p = q; } //destructor: ~X() { //(A) cout << "Destructor invoked for X object with p = " << p << endl; } }; int main() { vector<X> vec; //(B) X x1( 1 ); //(C) X x2( 2 ); //(D) X x3( 3 ); //(E) vec.push_back( x1 ); //(F) vec.push_back( x2 ); //(G) vec.push_back( x3 ); //(H) return 0; }
C:\classes\ece538\work\kak05>VectorDest Destructor invoked for X object with p = 1 Destructor invoked for X object with p = 1 Destructor invoked for X object with p = 2 Destructor invoked for X object with p = 1 Destructor invoked for X object with p = 2 Destructor invoked for X object with p = 3 Destructor invoked for X object with p = 3 Destructor invoked for X object with p = 2 Destructor invoked for X object with p = 1 Destructor invoked for X object with p = 1 Destructor invoked for X object with p = 2 Destructor invoked for X object with p = 3
Maintained by John Loomis, updated Sat Jan 06 21:44:18 2007