class ctr { 
\fbox{C++}
public: ctr() { n = 0; } void operator++() { n = n + 1; } int operator()() { return n; } operator char*() { return "aCounter"; } private: int n; };

Usage

  ctr c; c++; cout << (char*) c << " is " << c();
  

slide: C++ - techniques (2)