C++98/03 (old C++): The original C++ standard and sebsequently amended by a technical corrigendum in 2003, which provided minor corrections and clarifications. Known as “old C++ standard”.
Modern C++: Began with C++11 and extended with C++14 and C++17. The international C++ stanards committee now aims to issue a new standard every three years. Development of larger features happens over multiple standards.
C++11: Lambda expressions, auto keyword, multitthreading, range-based for loops, smart pointers, hashing data structure, move semantics
C++14: Improved template aliases, binary literals, relaxed constexpr, generic lambdas, return type deduction for functions
C++17: structured bindings, if constexpr, fold expressions, parallel algorithms in the STL, inline variablkes, CTAD, nested namespaces, variable declaration in if and switch.
C++20: concepts library, ranges, coroutines, three-way comparisons, modules, calendar and time zone library, std::to_array