ADT in C++
class ctr { public: ctr() { n = 0; }constructor
~ctr() { cout << "bye"; };destructor
void add( int i = 1) { n = n + i; } int val( ) { return n; } private: int n; };
Usage
ctr c; c.add(1); cout << c.val(); ctr* p = new ctr(); c->add(1); ...