C plus plus program design: an introduction to programming and object-oriented design - Cohoon, James P. (TMH, 2000)