name -- denotes an object, a function, set of functions, enumerator, type, class member, template, a value or a label
object -- region of storage
public:
ctr(int i = 0, char* x = "ctr") {
n = i; strcpy(s,x);
}
ctr& operator++(int) { n++; return *this; }
int operator()() { return n; }
operator int() { return n; }
operator char*() { return s; }
private:
int n; char s[64];
};
Usage