We will write or analyze such code
template
using StrKeyMap = std::map;
StrKeyMap my_map; // std::map
const vector values;
auto v1 = values; // v1 : vector
auto& v2 = values; // v2 : const vector&
struct A {
virtual void foo() const final {}
void bar() const final {} // compilation error, only virtual
// functions can be marked as final
};
struct B : A {
void foo() const {} // compilation error, cannot override
// function marked as final
};
Your abilities after Modern C++ basic features training
- you know and use presented modern C++ features
- you know limitations of presented features
- you apply the best practices for presented features
Agenda
-
static_assert
-
nullptr
-
enum class
(scoped enums) -
auto
keyword and automatic type deduction -
range-based
for
loops -
using
alias - uniform initialization
-
default
,delete
,final
,override
- new keywords
Activities
- pre-work to be done before our training
- pre-test pre-test at the beginning
- exercises followed by the trainer's implementation
- code review of participants' solutions
- post-work with code review
- post-test one week after the training
- certificate of completion
Duration
- 1 day (7 hours with breaks)
Form
- online
- classroom
Order Modern C++ basic features training
Related trainings
Modern C++ advanced features
This training covers other modern C++ features: attributes,
constexpr
, noexcept
, data structure alignment, structured bindings, lambda expressions (in short) and review of other useful features. Lambda expressions
The key feature of C++11, enhanced in C++14, C++17 and C++20 covered in detail in a separate session.