This 4-day C++ training course is an introduction to the C++ programming language, the C++ Standard Library, and modern C++11 to C++17 standards. No previous C++ programming experience is needed. The course is suitable for beginners as well as experienced developers who wish to learn the C++ programming language basics. The training consists of a theoretical introduction by the trainer, handouts, source code examples, and live coding and Q&A sessions.
Day 1. Introduction to the C++ programming language basics
The first day is an introduction to the C++ programming language basics. We will learn about types, type modifiers, variable declaration, definition, initialization, operators, standard input and output, arrays, pointers, references, strings, automatic type deduction, statements, constants, functions, storage, scope, enumerations, and conversions.
Day 2. Introduction to classes and templates
On the second day, we discuss abstraction mechanisms such as classes and templates. Here we cover the following topics: introduction to classes, data member fields, member functions, access specifiers, introduction to constructors, default constructor, member initialization lists, copy constructor, copy assignment, move constructor, move assignment, operator overloading, destructors, introduction to inheritance and polymorphism, introduction to templates.
Day 3. Introduction to smart pointers, streams and C++ Standard Library
On the third day, we will learn about smart pointers, including unique and shared pointers. We then discuss streams that allow us to write to and read from files and string streams. We continue with the most used C++ Standard Library containers such as vectors, arrays, sets, maps, and pairs. We describe some of the widely used functions such as the std::sort, std::find, std::copy, finding min and max elements. Finally, we discuss lambda expressions.
Day 4. Introduction to modern C++ standards
On the final day, we describe the C++ language features, and C++ Standard Library features introduced in modern C++ standards. We discuss the C++11, C++14, and C++17 standards. We also introduce C++ guidelines, the go-to resources, best practices, and dos and don’ts when programming in C++.