
C++ Training Course
Overview

The five-day C++ training course is an introduction to the C++ programming language, the C++ Standard Library, and modern C++11 to C++17 standards. The training is offered both remotely and on-site. No prior experience with C++ is required to attend the course. The course is intended for individuals and teams who wish to learn the C++ programming language.
The recommended group size is up to ten people. The C++ training day consists of a theoretical introduction, source code examples, and coding exercises. During the training, there is an ongoing Q&A session between the trainer and participants. The C++ handouts are in PDF format. Solved source code exercises are in the .zip format. The final day is dedicated to building a C++ project, debugging the code and performing code reviews.
Topics
The following is a breakdown of all the C++ topics by day:
- Day 1
- Introduction
- Compilers
- Types
- Declaration, Definition, and Initialization
- Operators, Operands, Expressions
- Standard Input
- Arrays
- Pointers
- References
- Strings
- Automatic Type Deduction
- Built-in Statements
- Constants
- Functions
- Scope and Lifetime
- Q&A and Exercises
- Day 2
- Classes:
- Data Member Fields
- Member Functions
- Access Specifiers
- Constructors
- Default Constructor
- Member Initialization
- Copy Constructor
- Copy Assignment
- Move Constructor
- Move Assignment
- Operator Overloading
- Destructors
- Inheritance and Polymorphism
- Templates
- Enumerations
- Code Organization:
- Header and Source Files
- Header Guards
- Namespaces
- Q&A and Exercises
- Day 3
- Conversions
- Exceptions
- I/O Streams
- C++ Standard Library:
- Containers:
- std::vector
- std::array
- std::set
- std::map
- std::pair
- Other Containers
- The Range-Based for Loop
- Iterators
- Algorithms and Utilities:
- std::sort
- std::find
- std::copy
- Min and Max Elements
- Other Functions
- Lambda Expressions
- Q&A and Exercises
- Day 4
- C++11 Standard:
- Automatic Type Deduction
- Range-based Loops
- Initializer Lists
- Move Semantics
- Lambda Expressions
- The constexpr Specifier
- Scoped Enumerators
- Smart Pointers
- std::tuple
- static_assert
- Introduction to Concurrency
- Deleted and Defaulted Functions
- Type Aliases
- C++14 Standard:
- Binary Literals
- Digits Separators
- Auto for Functions
- Generic Lambdas
- std::make_unique
- C++17 Standard:
- Nested Namespaces
- Constexpr Lambdas
- Structured Bindings
- std::filesystem
- std::string_view
- std::any
- std::variant
- Q&A and Exercises
- Day 5
- Project
- Q&A and Code Review
Workflow
A C++ training day can be organized as follows:
Time | Activity |
---|---|
09:00 – 11:00 | Live training |
11:00 – 12:30 | Exercises |
12:30 – 13:30 | Lunch break |
13:30 – 15:30 | Live training |
15:30 – 17:00 | Exercises |
Live training includes the following:
- C++ theoretical introduction
- C++ source code examples
- C++ PDF handouts
Exercises include the following:
- C++ source code tasks
- Complete C++ source code solutions
- Q&A sessions with a trainer
The workflow can be modified according to the client’s needs.
Summary
This course aims to provide a professional-grade introduction to the modern C++ programming language, establish a solid base, and enable further progress. This training is for everyone who wishes to learn the C++ programming language, solidify their C++ knowledge base and get familiar with modern C++ standards. The course follows the latest trends in the C++ programming community, the C++ guidelines and provides the necessary building blocks that make a C++ knowledge backbone. Each training day can be customized to meet the client’s requirements.
Benefits
We provide professional-grade C++ training and shorten the time needed to master the C++ fundamentals. We help create new C++ developers in your company and improve the existing C++ knowledge with your team.
For more info, contact us at contact@cppsrc.com.
Download the C++ PDF brochure