The C++ fundamentals training aims to build a solid understanding of the C++ programming language, from basic to advanced engineering requirements. The knowledge is build from the ground up, covering fundamental techniques such as function and operator overloading up until more advanced topics such as template programming. Throughout the training we will maintain a focus on a safe, modern style of programming in C++, covering language features up to those part of C++20. Next to interactive lectures, large part of the training will be hands-on exercises to apply knowledge in practice.

Depending on the group skill level and preferences, the training can be adapted to emphasize specific subjects and exercises.

This training is available for open enrollment as well as for in-company sessions. For in-company sessions, the C++ Fundamentals training can be adapted to your situation and special needs.

Objective

  • Build a solid understanding of modern C++;
  • Focus on a safe, modern style of programming;
  • Learn language features up to C++20;
  • Directly apply knowledge during hands-on exercises;
  • Learn about resources for further professional development.

Target audience

Software engineers with basic programming experience (any language will do).

Location (1)
Start date (1)
Duration 2 times 2 days within 2 weeks
Frequency Once per year
Price per participant € 2,750 excl. VAT *
Keep me posted

Program

Day 1:

  • Introduction to C++, variables and initialization, control structures.
  • At the end of the day, the attendees will able to explain what C++ is, how its compilation model works, and what it can be used for. They will also be able to read and write basic applications comprising of data structures and general control structures.

Day 2:

  • Functions, classes and inheritance.
  • At the end of the day, attendees will be able to read and write more advanced applications using data and control structures, and functions. They will be able to properly organize their code using functions and object-oriented data structures such as classes.

Day 3:

  • Memory organization and management, error handling and exceptions, generic programming and templates.
  • At the end of the day, attendees will understand the basic mechanics and important implications of memory management in C++. They will be able to employ exceptions as a means for structured error handling. Also, they will be able to use templates to create type-generic, compile-time instantiated code.

Day 4:

  • The standard library, algorithms and iterators, operators and operator overloading. Optional topics (on request): constant expressions, the C++ tooling and information ecosystem.
  • At the end of the day, attendees will have good sense of the C++ toolbox: the standard library. They will be able to employ algorithms and iterators, some of the most important parts of the standard library. Also, they will be able to use operator overloading to fully integrate their custom data structures into the language vocabulary. When leaving the course, they are left with handles to sources for further professional development in C++.

Methods

Lectures, hands-on exercises, interactive discussions.

Deliverables: course materials will be slides, a resource overview and an online code repository for exercises and solutions.

During and after the training, the trainer is available through e-mail for questions and support.

Certification

Participants will receive a High Tech Institute course certificate for attending this training. 

Remarks from participants

"A pleasant, well communicated and interactive course about many aspects of C++."

Baris Ozturk - SeeCubic

"The course was really good and informative."

Sharlon Monte - MBI ICT Nieuwegein