The “Default Constructor”
If you don’t give a class a constructor, a “default constructor” is generated -- a constructor that takes no arguments and does nothing (we’ll see why this is important shortly)
void increment() { counter_p++; }
void decrement() { counter_p--; }
void get_value() { return counter_p; }
cout << a.get_value(); // Undefined - a was not initialized