Object-oriented software in ANSI C++ - Smith, Michael A. (McGraw-Hill, 1999)