TTE9745: Intermediate C++ Programming

$2,695.00


  • Virtual Classroom

  • Onsite
Duration: 5 Days

Intermediate C++ Programming is a lab-intensive, hands-on programming course that explores intermediate-to-advanced level C++ development skills while working in the UNIX or Windows development environment.

What You Will Learn

 

  • Class construction and method development
  • Function and operator overloading
  • Function and class templates
  • Creating classes through inheritance
  • Virtual polymorphism
  • Advanced input/output

Audience

 

Experienced C++ programmers

Prerequistes

 

  • A six-month minimum of practical programming experience in C++
    Note: This course includes an optional C++ review component as a brief refresher.
  • Skills or training equivalent to Introduction to C++ Programming

Course Outline

 

1. C++ Refresher / Optional

  • Pointers
  • Composite Data Types
  • OOP Concepts
  • C++ Keywords
  • Introductory Concepts
  • Input / Output
  • Function Overloading
  • The Class
  • References
  • Operator Overloading
  • Inheritance

2. Classes

  • Definition
  • Member Functions
  • The "this" Pointer
  • Static Members
  • Scope
  • Nested Classes
  • Initialization
  • Construction
  • Destruction
  • Memberwise Assignment

3. Operator Overloading

  • Definition
  • Friend functions
  • Operator=
  • Operator[]
  • Operator()
  • Operator->
  • Other overloaded operators

4. Templates

  • Function
  • Review
  • Class
  • Definition
  • Instantiation
  • Member Functions
  • Friend Declarations
  • Specializations

5. Inheritance

  • Defining a Class Hierarchy
  • Base Class Member Access
  • Base and Derived Class Construction
  • Base and Derived Class Virtual Functions
  • Multiple Inheritance
  • Public, Private, and Protected Inheritance
  • Virtual Inheritance

6. Input / Output

  • Input / Output - iostream
  • The Output Operator <<
  • The Input Operator >>
  • Overloading the Output Operator <<
  • Overloading the Input Operator >>File Input and Output

Course Labs

 

This course comprises about 50% hands-on lab and 50% lecture, with extensive programming exercises that are designed to reinforce skills and concepts learned in the course. Our courses include ample materials and labs to ensure that you are either appropriately challenged or assisted at all times - regardless of skill level. You are invited to bring your ideas and questions to the classroom for discussion. Lecture, group problem-solving, and online laboratories will be used in class. You are encouraged to enhance your skills by using the techniques presented through classroom problem-solving and controlled online workshops.