I consider myself a reasonably good C++ programmer, without being an expert by any stretch of the imagination. However, I have to admit that I'm better at design than coding, and I always trip up over ...