C++ program design : an introduction to programming and object-oriented design - Cohoon, James P. (Computer science series, 1999)