Reference Books


Textbook: Stanley B. Lippman and Josee Lajoie, "C++ Primer" (3rd Edition). 
Addison-Wesley, 1998. ISBN: 0-201-82470-1. 

Kayshav Dattatri, "C++: Effective Object-Oriented Software Construction: Concepts,
Principles, Industrial Strategies, and Practices". 
Prentice Hall, 1997. ISBN: 0-13-104118-5. 
This book is good provided that you are fluent with C++ and it emphasizes more on the design,
programming techniques, and why C++ is designed as it is now. 

Bjarne Stroustrup, "The C++ Programming Language" (3rd Edition). 
Addison-Wesley, 1997. ISBN: 0-201-88954-4. 
This book (by the designer of C++) is a must-have for every serious C++ programmer. 

Margaret A. Ellis, Bjarne Stroustrup, "The Annotated C++ Reference Manual". 
Addison-Wesley, 1995. ISBN: 0-201-51459-1. 
This is not a book for learning C++, but rather for looking up detailed information, with examples
and explanation. A new edition of the book (covering the ANSI standard) is expected at the end of
this year. 

Matthew H. Austern, "Generic Programming and the STL: Using and Extending the C++
Standard Template Library". 
Addison-Wesley, 1999. ISBN: 0-201-30956-4. 
This book explains the central ideas underlying generic programming and shows how these ideas
lead to the fundamental concepts of the STL: iterators, containers, and function objects. 

Scott Meyers, "Effective C++ "(2nd Edition). 
Addison-Wesley, 1998. ISBN: 0-201-92488-9. 
A very good book, aimed at programmers that already know C++ but want to become better
programmers. You should be able to read most of it after you completed COMP151. 

Scott Meyers, "More Effective C++". 
Addison-Wesley, 1996. ISBN: 0-201-63371-X. 
A follow-up to Effective C++; equally good. 

Gamma et al., "Design Patterns -- Elements of Reusable Object-Oriented Software". 
Addison-Wesley, 1995. ISBN: 0-201-63361-2. 
This book is aimed at proficient C++ programmers, and covers Object-Oriented design techniques.