Data Abstraction & Problem Solving With C++ - Frank M.Carrano (Addison-Wesley New York, 1995)