Cursus Advanced C++ Programmeren
"Het cursus materiaal was van goede kwaliteit. De presentatie bestreek veel stof en vrijwel alle onderwerpen werden voorzien van een voorbeeldproject in Microsoft Visual Studio. Helaas ontbrak het bij de docent aan praktijkervaring waardoor de praktische toepassing van veel concepten beperkt bleef. Ook zou er voor de ervaren ontwikkelaar meer aandacht mogen zijn voor nieuwe features uit C+14, C++17 C++20 en eventueel C++23." - 03-07-2023 09:42
"Het cursus materiaal was van goede kwaliteit. De presentatie bestreek veel stof en vrijwel alle onderwerpen werden voorzien van een voorbeel… alles lezen - 03-07-2023 09:42
Startdata en plaatsen
placeAmsterdam 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Amsterdam, Dag 1 event 22 april 2025, 09:30-16:30, Amsterdam, Dag 2 event 23 april 2025, 09:30-16:30, Amsterdam, Dag 3 event 24 april 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Eindhoven, Dag 1 event 22 april 2025, 09:30-16:30, Eindhoven, Dag 2 event 23 april 2025, 09:30-16:30, Eindhoven, Dag 3 event 24 april 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Houten, Dag 1 event 22 april 2025, 09:30-16:30, Houten, Dag 2 event 23 april 2025, 09:30-16:30, Houten, Dag 3 event 24 april 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Online, Dag 1 event 22 april 2025, 09:30-16:30, Online, Dag 2 event 23 april 2025, 09:30-16:30, Online, Dag 3 event 24 april 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Rotterdam, Dag 1 event 22 april 2025, 09:30-16:30, Rotterdam, Dag 2 event 23 april 2025, 09:30-16:30, Rotterdam, Dag 3 event 24 april 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 21 apr. 2025 tot 24 apr. 2025Toon rooster event 21 april 2025, 09:30-16:30, Zwolle, Dag 1 event 22 april 2025, 09:30-16:30, Zwolle, Dag 2 event 23 april 2025, 09:30-16:30, Zwolle, Dag 3 event 24 april 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Amsterdam, Dag 1 event 4 juni 2025, 09:30-16:30, Amsterdam, Dag 2 event 5 juni 2025, 09:30-16:30, Amsterdam, Dag 3 event 6 juni 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Eindhoven, Dag 1 event 4 juni 2025, 09:30-16:30, Eindhoven, Dag 2 event 5 juni 2025, 09:30-16:30, Eindhoven, Dag 3 event 6 juni 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Houten, Dag 1 event 4 juni 2025, 09:30-16:30, Houten, Dag 2 event 5 juni 2025, 09:30-16:30, Houten, Dag 3 event 6 juni 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Online, Dag 1 event 4 juni 2025, 09:30-16:30, Online, Dag 2 event 5 juni 2025, 09:30-16:30, Online, Dag 3 event 6 juni 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Rotterdam, Dag 1 event 4 juni 2025, 09:30-16:30, Rotterdam, Dag 2 event 5 juni 2025, 09:30-16:30, Rotterdam, Dag 3 event 6 juni 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 3 jun. 2025 tot 6 jun. 2025Toon rooster event 3 juni 2025, 09:30-16:30, Zwolle, Dag 1 event 4 juni 2025, 09:30-16:30, Zwolle, Dag 2 event 5 juni 2025, 09:30-16:30, Zwolle, Dag 3 event 6 juni 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Amsterdam, Dag 1 event 6 augustus 2025, 09:30-16:30, Amsterdam, Dag 2 event 7 augustus 2025, 09:30-16:30, Amsterdam, Dag 3 event 8 augustus 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Eindhoven, Dag 1 event 6 augustus 2025, 09:30-16:30, Eindhoven, Dag 2 event 7 augustus 2025, 09:30-16:30, Eindhoven, Dag 3 event 8 augustus 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Houten, Dag 1 event 6 augustus 2025, 09:30-16:30, Houten, Dag 2 event 7 augustus 2025, 09:30-16:30, Houten, Dag 3 event 8 augustus 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Online, Dag 1 event 6 augustus 2025, 09:30-16:30, Online, Dag 2 event 7 augustus 2025, 09:30-16:30, Online, Dag 3 event 8 augustus 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Rotterdam, Dag 1 event 6 augustus 2025, 09:30-16:30, Rotterdam, Dag 2 event 7 augustus 2025, 09:30-16:30, Rotterdam, Dag 3 event 8 augustus 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 5 aug. 2025 tot 8 aug. 2025Toon rooster event 5 augustus 2025, 09:30-16:30, Zwolle, Dag 1 event 6 augustus 2025, 09:30-16:30, Zwolle, Dag 2 event 7 augustus 2025, 09:30-16:30, Zwolle, Dag 3 event 8 augustus 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 7 okt. 2025 tot 10 okt. 2025Toon rooster event 7 oktober 2025, 09:30-16:30, Amsterdam, Dag 1 event 8 oktober 2025, 09:30-16:30, Amsterdam, Dag 2 event 9 oktober 2025, 09:30-16:30, Amsterdam, Dag 3 event 10 oktober 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 7 okt. 2025 tot 10 okt. 2025Toon rooster event 7 oktober 2025, 09:30-16:30, Eindhoven, Dag 1 event 8 oktober 2025, 09:30-16:30, Eindhoven, Dag 2 event 9 oktober 2025, 09:30-16:30, Eindhoven, Dag 3 event 10 oktober 2025, 09:30-16:30, Eindhoven, Dag 4 |
Beschrijving
In de cursus Advanced C++ komen de nieuwe en geavanceerde aspecten van de C++ taal gebaseerd op de standaarden C++11, C++14, C++17 en C++20 ruimschoots aan de orde.C++11 Features
De cursus gaat van start met een overzicht van de features die in C++11 zijn geïntroduceerd zoals type inference, initializer lists, range based for loop, lambda functies en strongly typed enums.
Right References en Move Constructors
Vervolgens wordt ingegaan op right references en de performance winsten die geboekt kunnen worden door move constructors naast copy constructors te gebruiken.
Inheritance Toevoegingen
Ook de nieuwe mogelijkheden met betrekking tot inheritance met de keywords default, delete, override e…

Veelgestelde vragen
Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.
C++11 Features
De cursus gaat van start met een overzicht van de features die in C++11 zijn geïntroduceerd zoals type inference, initializer lists, range based for loop, lambda functies en strongly typed enums.
Right References en Move Constructors
Vervolgens wordt ingegaan op right references en de performance winsten die geboekt kunnen worden door move constructors naast copy constructors te gebruiken.
Inheritance Toevoegingen
Ook de nieuwe mogelijkheden met betrekking tot inheritance met de keywords default, delete, override en final komen aanbod. En passant wordt ingegaan op de implementatie van virtual functions en de noodzaak van virtual destructors.
Smart Pointers
Daarnaast wordt in detail gekeken naar smart pointers en hierbij komen unique pointers, shared pointers en weak pointers aan de orde.
Operator Overloading en Templates
Ook operator overloading en templates staan op het programma, waarbij ingegaan wordt op variadic templates en perfect forwarding.
RAII Pattern
Het modern C++ Resource Acquisition is Initialization ofwel RAII idioom komt aan de orde bij exception handling.
Multithreading
Threads evenals de synchronisatie tussen threads zijn onderdeel van de standaard en worden besproken. Hierbij wordt ook ingegaan op asynchrone calls met promises en futures.
C++11, C++17 en C++20 Features
Vervolgens komen specifieke C++11, C++17 en C++20 features aan bod zoals optional types, structured binding declarations en constructies uit de wereld van functioneel programmeren zoals fold expressions.
Advanced STL
De cursus besluit met een overzicht van geavanceerde
mogelijkheden van de Standard Template Library STL.
Doelgroep Cursus Advanced C++ Programmeren
De cursus Advanced C++ is bedoeld voor developers die bekend zijn met C++ maar die zich willen verdiepen in de meer geavanceerde technieken en mogelijkheden van de taal.
Voorkennis Cursus Advanced C++ Programmeren
Om aan deze cursus deel te nemen is kennis van de basis concepten van C++ en uitgebreide ervaring met programmeren in C++ vereist. De deelnemers moeten vertrouwd zijn met onderwerpen als operator overloading, templates, virtual functions en polymorfisme.
Uitvoering Training Advanced C++
De theorie wordt behandeld aan de hand van presentatie slides.
Illustratieve demo’s worden
gebruikt om de behandelde concepten te verhelderen. Er is een
sterke afwisseling van theorie en praktijk en ruime gelegenheid om
te oefenen.
Officieel Certificaat Advanced C++ Programmeren
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Advanced C++ Programmeren.
Modules
Module 1 : Modern C++ Features
- C++11 Features
- Type Inference
- Auto Keyword
- Deduction with decltype
- Uniform Initialization
- Initializer Lists
- Range Based for Loop
- Null Pointer Constant
- constexpr Keyword
- Static Asserts
- Lambda Functions
- Strongly Types Enums
- User Defined Literals
- Raw String Literals
Module 2 : Move Semantics
- Reference Initialization
- References and Pointers
- Rvalues and Rvalues in C++
- Passing and Returning References
- Rvalue References
- Comparing Reference Types
- Rvalue Reference Usage
- Assignment Operator
- Copy Constructor
- Passing and Returning Objects
- Passing References to Objects
- Move Constructor
- Move Assignment Operator
- Golden Rule of 5
Module 3 : Inheritance
- default and delete Keyword
- Delegating Constructors
- Inheritance
- Calling Base Class Constructors
- Multiple Inheritance
- Virtual Derivation
- Polymorphism
- Virtual Functions
- Abstract Classes
- Interfaces in C++
- Destructors and Inheritance
- Virtual Destructors
- override Specifier
- final Specifier
Module 4 : Smart Pointers
- unique_ptr
- Using unique_ptr
- Specialization for Arrays
- Replacement for std::auto_ptr
- std::make_unique
- shared _ptr Pointer
- Control Block
- shared_ptr Destruction Policy
- shared_ptr Interface
- Cyclic References
- weak_ptr
Module 5 : Operator Overloading
- Syntax Operator Overloading
- Overloading Numeric Types
- Overloading Overview
- Overloading Restrictions
- When not to Overload
- Operators as Class Members
- Operators as Friend Functions
- Overloading Stream Operators
- Overloading ostream and istream
- Overloading Unary Operators
- Overloading Binary Operators
Module 6 : Templates
- Template Functions
- Template Specialization
- Template Parameter List
- Inclusion Compilation Model
- Class Templates
- Template Member Functions
- Template Parameter Scope
- Templates and Statics
- Templates and Friends
- Alias Templates
- Perfect Forwarding
Module 7 : Exception Handling
- Error Conditions and Exceptions
- Class Objects as Exceptions
- Parameter Catch Block
- Catching in Hierarchy
- Golden Rule
- Rethrowing Exceptions
- noexcept Specifier
- Preventing Resource Leaks
- RAII Idiom
- C++ Standard Exceptions
- User Defined Exceptions
- Exception Handling Costs
Module 8 : Multiple Threads
- Multiple Threads
- Benefits and Drawbacks
- Thread Class
- Joining Threads
- Detaching Threads
- Thread ID
- Callables
- Passing Parameters
- Pass by Reference
- Pass by std::ref and std::move
- Member Function as Thread
- Thread Local Storage
Module 9 : Synchronization
- Data Corruption
- Lock Guard
- Automatic Lock Management
- Mutex and RAII
- Recursive Locking
- Atomic Types
- Call Once
- Event Handling
- Condition Variables
- Wait and Notify
- Promises and Futures
- Asynchronous Tasks
Module 10 : C++14-17-20 Features
- Init-statement for if
- Selection Initialization
- Structured Binding Declarations
- const if Expressions
- Guaranteed Copy Elision
- Inline Variables
- Fold Expressions
- Optional Type
- Small String Allocations
- String View
- Generic lambdas
- Aggregate initialization
Module 11 : Standard Template Library
- STL Core Components
- Containers, Algorithms and Iterators
- Vectors, Lists and Dequeues
- Adapters and Associative Containers
- Maps and Hash Maps
- Bitsets
- STL Iterators
- Reverse and Iostream iterators
- Function objects
- STL Algorithms
- Predicates and Comparators
- STL Allocators
Waarom SpiralTrain
SpiralTrain is specialist op het gebied van software development trainingen. Wie bieden zowel trainingen aan voor beginnende programmeurs die zich de basis van talen en tools eigen willen maken als ook trainingen voor ervaren software professionals die zich willen bekwamen in de nieuwste versie van een taal of een framework.
Onze trainingkenmerken zich door :
• Klassikale of online open roostertrainingen en andere
trainingsvormen
• Eenduidige en scherpe cursusprijzen, zonder extra kosten
• Veel trainingen met een doorlopende case study
• Trainingen die gericht zijn op certificering
"Het cursus materiaal was van goede kwaliteit. De presentatie bestreek veel stof en vrijwel alle onderwerpen werden voorzien van een voorbeeldproject in Microsoft Visual Studio. Helaas ontbrak het bij de docent aan praktijkervaring waardoor de praktische toepassing van veel concepten beperkt bleef. Ook zou er voor de ervaren ontwikkelaar meer aandacht mogen zijn voor nieuwe features uit C+14, C++17 C++20 en eventueel C++23." - 03-07-2023 09:42
"Het cursus materiaal was van goede kwaliteit. De presentatie bestreek veel stof en vrijwel alle onderwerpen werden voorzien van een voorbeel… alles lezen - 03-07-2023 09:42
Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.