Effective C++ 50 specific ways to improve your programs and designs - Meyers, Scott