• Programming Training

    business_appsInterSource offers live instructor-led courses on all important programming technologies, including C#, C/C#, PHP and Visual Basic. We can also arrange training on many less-known but highly useful languages. We can teach courses on a variety of additional topics; please request an offer if you need a course which is not indicated on the site.

    These live classes are offered both on client sites, at our Geneva training center, and via a Web interface.

  • About Programming

    Within software engineering, programming (the implementation) is regarded as one phase in a software development process, normally following closely on the heels of the requirements gathering phase.

    Computer programming (often shortened to programming or coding) is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language. The code may be a modification of an existing source or something completely new. The purpose of programming is to create a program that exhibits a certain desired behavior (customization). The process of writing source code often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic.


    Read More
  • Course Details Programming

    Classes are offered at client sites, at our Geneva training center, and via a live web conference. For detailed course outlines and scheduled classes, please see below.

    To book training, navigate to the course you need, then:

    • For scheduled online classes, register from the choices indicated.
    • If you need an alternative date, time or location, or if you want a live classroom course, click on “request an offer for this course,” to complete the form.

C++ Training

Course duration

  • 5 days

Course Benefits

  • Learn to create Classes
  • Learn to work with Constructors and Destructors
  • Learn to understand Inheritance
  • Learn about Virtual and Pure Virtual Functions
  • Learn about References and Constants
  • Learn about the new and delete keywords
  • Learn to use Casting in C++
  • Learn about Class Methods and Data
  • Learn to create Overloaded Functions and use Overloaded Operators
  • Learn about Exception Handling
  • Learn to use the Standard Template Library
  • Learn to work with STL Containers

Course Outline

  1. Classes
    1. Creating a Data Structure
    2. Methods
    3. Object Scope
    4. C++ Input and Output
    5. Namespaces
    6. Data Abstraction
    7. Enforcing Data Encapsulation
    8. File Organization
    9. Classes in C++
    10. Objects
    11. this Pointer
  2. Constructors and Destructors
    1. Debug Output
    2. The Default Constructor
    3. When are Constructors Called?
    4. The Destructor
    5. The Copy Constructor
    6. Other Constructors
    7. Why Did It Work Before?
    8. Composition
    9. The Report Class
    10. Code Reuse
    11. Initialization Lists
  3. Inheritance
    1. Inheritance
    2. Bugreport
    3. Protected Access Modifier
    4. Access and Inheritance
    5. Constructors and Inheritance
    6. Initialization Lists Revisited
    7. Multiple Inheritance
  4. Virtual Functions
    1. Inheritance and Assignment
    2. Inside Report's Assignment Operator
    3. Using Pointers - a Quick Look at Basics
    4. Class Assignment and Pointers
    5. Static Binding
    6. Dynamic Binding
    7. Polymorphism
    8. The show_rep() Function
    9. Using the show_rep() Function
    10. Designing Member Function Inheritance
  5. Pure Virtual Functions
    1. Bugfix and Its Relationship with Bugreport
    2. Bugfix: Association with Bugreport
    3. Using Bugfix with show_rep()
    4. Adding Bugfix to the Hierarchy
    5. Coding for the Document Class
    6. Reexamining the Document Class
    7. Pure Virtual Functions
    8. Updated: Designing Member Function Inheritance
  6. References and Constants
    1. References
    2. Displaying References
    3. Changing References
    4. Pass by Reference
    5. Returning by Reference
    6. Constant Variables
    7. Constant References
    8. Constant Methods
  7. new and delete
    1. new and delete
    2. Array Allocation
    3. The Report Class
    4. Compiler Version of the Copy Constructor
    5. Guidelines for Copy Constructors
    6. The Report Constructors and new
    7. The Report Destructor and delete
    8. Virtual Destructors
  8. Casting in C++
    1. Casting: A Review
    2. New Casting Syntax
    3. Creating a String Class
    4. The String Class
    5. The Conversion Constructor
    6. Expanding Our Casting Options
    7. Casting Operator
    8. Using the Casting Operator
  9. Class Methods and Data
    1. Class Data
    2. Class Methods
    3. Using the New Data
    4. More on Class Methods
  10. Overloaded Functions
    1. Function Overloading
    2. Using Overloaded Functions
    3. Rules for Overloading
    4. Overloading Based on Constness
    5. Default Arguments
    6. Invoking Functions with Default Arguments
  11. Overloaded Operators
    1. The Basics of Overloading
    2. Overloading operator+
    3. Coping with Commutativity
    4. Non-Commutative Operators
    5. friends and Their Problems
    6. The Assignment Operator
    7. Overloading the >> Operator
    8. Using Date with cout
  12. Exception Handling
    1. Why Exception Handling?
    2. try / catch / throw
    3. Exception Classes
    4. Standard Exception Hierarchy
    5. Multiple catch Blocks
    6. Catching Everything
    7. Unhandled Exceptions
    8. Exception in Constructors and Destructors
    9. Designing for Exceptions
  13. Standard Template Library
    1. Class Template Concepts
    2. Standard Template Library (STL) Overview
    3. Containers
    4. Iterators
    5. Iterator Syntax
    6. Non-Mutating Sequential Algorithms
    7. Mutating Sequential Algorithms
    8. Sorting Algorithms
    9. Numeric Algorithms
    10. auto_ptr Class
    11. string Class
  14. STL Containers
    1. Container Classes
    2. Container Class Algorithms
    3. vector Class
    4. Additional vector Class Methods
    5. deque Class
    6. list Class
    7. set and multiset Classes
    8. map and multimap Classes

Class Materials

Each student will receive a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this C/C++ class:

  • C or some other procedural language

Experience in the following would be useful for this C/C++ class:

  • Java
Since its founding in 1995, InterSource has been providing high quality and highly customized training solutions to clients worldwide. With over 500 course titles constantly updated and numerous course customization and creation possibilities, we have the capability to meet your I.T. training needs.
Instructor-led courses are offered via a live Web connection, at client sites throughout Europe, and at our Geneva Training Center.