This is a free C++ tutorial by Roldan Pozo and Karin Remington, provided as course notes in pdf and gzip postscript formats. It also contains programming examples and scientific library examples.

**About the Author**

Roldan Pozo is a senior researcher in the Mathematical and Computational Sciences Division at the National Institute of Standards and Technology, where he investigates issues in complex networks, high performance computing, and software tools for scientific and numerical problems.

He was awarded the Presidential Early Career Award from the US White House for his contributions in object-oriented linear algebra software and computing, and also received the Bronze Medal from the US Department of Commerce for joint work with Ron Boisvert on improving the Java programming language and runtime environment for scientific computing.Dr. Pozo is the principal designer of several C++ numerical linear algebra libraries, including Lapack++, SparseLib++, MV++, IML++, and the Template Numerical Toolkit (TNT). He is also coauthor of the book, “Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods”, and one of the developers of Matrix Market.

## Table of Contents

- ANSI C
- C++ as a better C
- C++ Classes and Objects
- Objects in Scientific Computing
- Inheritance & Polymorphism
- Templates, Exceptions & Observations