The C++ language is introduced through a series of example programs relevant to high energy physicists. The course introduces basic syntax, object orientated programming, the Standard Template Library, interfacing with FORTRAN and high energy packages HepMC, HepPDT, and ROOT. Programming skills and design proccesses are introduced within the discussion of the example programs. The understanding of C++ programming concepts is tested through set problems, for which associated solutions are provided.
The course has been written for Linux and OSX but should compile on any other platform with a C++ compiler. The FORTRAN parts of this course have been tested with the gfortran compiler.