#include <string> #include <iostream> using namespace std; class counter { protected: int value; string name; public: counter(string n) { value = 0; name = n; cout << "counter " << name << " initialised to zero\n"; } counter() { value = 0; name = "(anonymous)"; cout << "counter " << name << " initialised to zero\n"; } int get_value() { return value; } void set_name(string n) { cout << name << " changed name to " << n << "\n"; name = n; } void increment() { value += 1; cout << "counter " << name << " incremented to " << value << "\n"; } void decrement() { value -= 1; cout << "counter " << name << " decremented to " << value << "\n"; } }; int main() { counter a("a"), b("belinda"), c("cat"), x; b.increment(); b.increment(); b.increment(); b.increment(); b.set_name("bert"); a.increment(); b.decrement(); cout << "The final value of b is " << b.get_value() << "\n"; }