CPP-14-17

C++ 14/17 training

Form of participation
Form of training
Length of training
  • 2 day (2×8 Lessons)
  • daily 9:00 - 17:00
Available languages
  • Hungarian
Dates

Training price

259 000 Ft
+ VAT/person
Please choose the date and form of participation!
Would you like a custom made solution, group training on this topic?
Find out more about our customised training services here.

Description

The aim of the course is to consolidate your knowledge of C++11, to increase your awareness of the techniques used and to learn the newer versions of the language (C++14/17). It contains a mix of theory and practice, as well as recommendations for everyday work based on the presenter's own experience. The slides are in English, but the lecture is entirely in Hungarian, describing both English and Hungarian official or common vocabulary.

Target audience: current or former daily users of C++11.

Outline

Data types and literals

  • nullptr
  • Class Enums
  • User defined string literals
  • Binary literals
  • Hexadecimal floating-point literals

Move semantics

  • Basics
  • Copy and move implementation
  • Automatisms
  • Workshop

Objects and classes

  • Using interfaces and inheritance
  • Override
  • Final
  • Constructor delegation
  • Member initialization

Type system and construction

  • Using and template aliases
  • Type inference
  • Structured binding
  • Uniform initialization
  • Initializer lists
  • Explicit conversion operators
  • Constexpr

Control flow

  • Initializers in if and switch
  • Range-based for loop
  • Lambdaa
  • Generic lambdas

Metaprogramming

  • If constexpr
  • Static_assert
  • Variadic templates
  • CTAD
  • Deduction rules

Data storage

  • Inline variables
  • Thread-local storage
  • alignof() and alignas()
  • Aligend allocation/deallocation
  • Sized deallocation

Library

  • Smart pointers
  • std::shared_mutex
  • std::string_view
  • std::optional
  • std::variant
  • std::any
  • pmr
  • std::execution
Outline (PDF)

Prerequisites

Programming work experience, C++ programming skills.