C++ program design : an introduction to programming and object-oriented design - Cohoon, James P (McGraw-Hill, 2002)
Includes index.