Booking options
£3,697
£3,697
Delivered Online or In-Person
You travel to organiser or they travel to you
5 days
All levels
The course will give a broad overview of the C++ Programming language, focusing on modern C++, up to C++17. This course will cover the use of the Standard Library, including containers, iterator, function objects and algorithms. From the perspective of application development, a number of design patterns will be considered.
Programmers needing to write C++ code.
Programmers needing to maintain C++ code.
C++ programming foundation.
5 days
Create a string class as a means to investigate many issues, involving the use of operator overloading and including overloading new and delete. Creation of the class will also require consideration of 'const correctness'.
Consider the issues involved in exception handling including the concept of exception safety.
Review definition of template functions, including template parameter type deduction. Introduction to template metaprogramming. Newer features including template template parameters and variadic templates. Creation of template classes.
Introduction to Design Patterns and consideration of a number of patterns, such as, factory method, builder, singleton and adapter.
Standard Library features, such as, Containers, Iterator, Function Objects and Algorithms. Introduction to Lambda expressions.
The writing of code throughout the course will be oriented towards performant code, including use of R Value references and 'move' semantics.
The use of pointers will be considered throughout the course. Smart pointers will be considered to improve program safety and help avoid the use of 'raw' pointers.
This section will consider the creation of threads and synchronisation issues. A number of synchronisation primitives will be considered. Async and the use of Atomic will also be considered.
Summarising some of the newer features to be considered are: Auto, Lambdas expression, smart pointers, variadic templates and folds, R Value references and tuple together with structured binding.
Redhill