EEC Logo


Introduction to C++ Programming

Duration: 4 or 5 days (see Prerequisites, below)

Audience

Software engineers, programmers, and analysts who will be designing and creating programs using C++. Anyone desiring the ability to read and understand C++ programs for maintenance and update purposes.

This course provides an intense introduction to C++ programming but the serious student will want to investigate other topics as well, such as object-oriented analysis and design (OOA&D), generic algorithms, and template metaprogramming.

Course Contents

  1. Why Object-Oriented Programming?
  2. Using C++ as a "Better C"
  3. Types, Functions, and Structures
  4. Data Protection via Classes
  5. Function Overloading and Typesafe Linkage
  6. Constructors and Destructors
  7. Introduction to Object-Oriented Design
  8. Derived Classes and Inheritance
  9. Concepts of Container Classes
  10. Friendship Among Classes
  11. Inheritance and Polymorphism
  12. Virtual Functions (and Pure Virtual Functions)
  13. static Class Members
  14. Implementation Hiding of C++ Classes
  15. Operator Overloading

Course Objectives

Upon completion of this course, the student will be able to:

Instructional Technique

Students are invited to bring their current ideas and questions to the classroom for discussion. Lecture, group problem solving, and online laboratories will be used. Students will be encouraged to enhance their skills utilizing the techniques presented through classroom problem solving and controlled online workshops. This course is approximately 50% labwork.

This course does not concentrate on the use of any one particular development tool. Instead, the students are encouraged to learn the proper design and implementation techniques by hand-coding their applications. If development tools are available at the training site, the instructor will demonstrate their use and guide the students in the use of such tools.

Prerequisites

Experience in C, Java, Pascal, or another compiled programming language with primitive data types is required. If you have any doubts about whether you meet this requirement, visit our Online C Language Review (see below).

This course can be offered as 5 days, with a single day of C language refresher and labs prepended. This refresher does not teach the entire C language, but will cover enough of the details for this C++ course to be completed. Example topics in the refresher include basic data types, loop constructs, background on pointers, user-defined data structures, and how to produce formatted output.

Online C Language Review

A selection of background questions is given below. Instructions for interpreting the results are given on the same page.

Background questions.