Graham, et. al.
As I stated. this is MY personal/professional OPINION. It is right FOR ME, because it works BEST for ME (and by extension those whom do work for my firm). I do not mean that this is what "everyone should do". At the very least other people should take a look at your, mine and John's optinions and make their own CONSISTENT (i.e. Always or only when required) decision.
Your point about auto generation of the parameterless constructor is 100% on the money.
As a side note your copy constructor is distinctly different than what the default copy constructor is (I am sure this was either unintentional or simply in the interest of brevity). As written, your copy constructor states that the target object should contain the same values as a default constructed object and should ignore the state of the source object. Again, I am sure this is not what you intended.
I think this discussion has been fruitful since it presents differing viewpoints without resorting to the "you are wrong" syndrome. Thanks to all for their ideas.
