Neueda
Shape

Course

C++ Programming

This course is designed to teach ISO Standard C++ to programmers in other high-level languages. C++ is a general-purpose programming language that is widely used in areas as diverse as operating systems and games, typically where performance is critical. The course explores concepts and syntax through lectures, discussion and hands-on lab exercises.

Duration: 5 days

Who is it for: This training course is for developers who need to be able to develop applications using the C++ programming language.

Layout:

Modules

Introduction

  • What is C++?
  • Origins and history
  • Language features

Introduction to OO Principles

  • Origins of OO
  • Characteristics of OO languages
  • Encapsulation and data hiding
  • Polymorphism
  • Inheritance
  • Interfaces

Syntax Basics

  • Hello World!
  • Compiling and linking C++ code
  • Simple I/O
  • Keywords
  • Literals
  • Declaring variables
  • Operators
  • Decision statements
  • Loops
  • Commenting

Functions

  • Declaring functions
  • Arguments and return values
  • Prototypes
  • Header files
  • Default and unused arguments
  • Scope and linkage
  • Function overloading
  • Extern “C”

Arrays, References and Pointers

  • Arrays
  • Multidimensional arrays
  • Strings
  • Pointers
  • Pointer arithmetic
  • Pointers and functions
  • Pointers and arrays
  • Memory allocation with new and delete
  • Void pointers
  • References

Enums, Structs and Unions

  • Creating and using enums
  • Creating structs
  • Dereferencing pointers
  • Accessing struct members
  • Typedef
  • Unions

The Preprocessor

  • Including files
  • Defining constants
  • Defining and using macros
  • Conditional compilation
  • Header file guards
  • Standard macros and symbols
  • Other preprocessor directives

Namespaces and Exceptions

  • Creating and using namespaces
  • Anonymous namespaces
  • Namespace aliases
  • What are exceptions?
  • Throwing and catching exceptions
  • Function try blocks
  • Throw specifications
  • Unhandled exceptions>

Working with Classes

  • Creating classes
  • Defining class members
  • The ‘this’ pointer
  • Constructors and destructors
  • Initialization lists
  • Default and explicit constructors
  • Copy construction
  • Exceptions in construction and destruction
  • Inline functions
  • Static class members
  • The standard string class

Operator Overloading

  • Why overload operators?
  • Overloading rules and best practices
  • Member and free operator functions
  • Overloading assignment
  • Overloading ++ and –
  • Overloading [] and ()

Inheritance

  • What is inheritance?
  • Proper inheritance relationships
  • Creating inheritance hierarchies
  • Accessing base class members
  • Base class initialization
  • Protected access
  • Virtual functions and polymorphism
  • Public, protected and private inheritance
  • Multiple inheritance
  • Interfaces

Templates

  • Templates and generic programming
  • Template functions
  • Template classes
  • Template specialization
  • Non-type parameters

I/O

  • C I/O
  • C++ stream classes
  • Using cin and cout
  • Handling errors
  • File I/O
  • Sequential and random File I/O
  • Overloading input and output operators

The Standard Library

  • Content of the Standard Library
  • STL concepts
  • Containers
  • Iterators
  • Algorithms

Enquire about this course

"*" indicates required fields

By submitting this form, you agree to our Privacy Policy.
This field is for validation purposes and should be left unchanged.