C++ is now established as one of the leading industry programming languages for object-oriented software development. Its advantages over other languages include speed and flexibility. It is used as the base for many commercial software products and for performance solutions to complex problems. Not often taught as the primary programming language, students are frequently expected to pick up the language for themselves. This book is an ideal student self-learning guide. As a step-by-step tutorial, this book teaches all language features and explains their practical usage. Intuitive examples are used that are neither too complex to distract, nor oversimplified. A key concept in C++ is programming with templates, which can help to program generic solutions - for example implementing polymorphism. Nicolai Josuttis teaches how to combine templates with object-oriented programming to produce the power of modern C++ development for high performance programs. It is a book that goes well beyond the basics. A supplementary website, including source code, can be found at www.josuttis.com/cppbook Features: * comprehensive, detailed, readable, practical and up-to-date * teaches how to get the power from C++, using the current ANSI language standard and programming mode * specific hints help C and Java programmers switch and compare languages. * website provides more examples and links to useful online resources.Josuttis, Nicolai M. is the author of 'Object-Oriented Programming in C++' with ISBN 9780470843994 and ISBN 0470843993.