Constructors
Every class should define a default constructor.
Use initializes whenever possible.
The declaration that uses an empty parentheses list is not syntactically incorrect; simply not doing what the programmer expects.
Every class should define a copy constructor.