C++ 20 (2a) New Features
Course
Online
Description
-
Type
Course
-
Methodology
Online
-
Start date
Different dates available
Get up to date with what's new in C++C++ is popular for its incredible performance and suitability for operating systems, games, embedded software, and more. This course gets you up-to-date with the very latest components in C++20/C++2a so you can harness its new enhancements and get ahead of the game by leveraging its features!We cover what C++20/C++2a is and the current standardization status. We also discover some new syntactic sugars that enable you to write shorter but more powerful code. You'll learn about the new and improved ranges and iterators, explore key examples of filter stacking, and learn how ranges simplify iterator-heavy code. Crucially, you'll master how to migrate to C++20/C++2a in the easiest possible way, and why you should!C++20/C++2a brings new features to the synchronization library, including atomic smart pointers, latchers, and barriers. We review its all-new coroutines (a major concept found in other leading programming languages that simplifies writing code for parallel execution).By the end of the course, you'll use up-to-date insights into the full features of C++20/C++2a to facilitate efficient and fast coding within your own projects.The code bundle for this course is available at: About the AuthorDaniel Zawadzki is a software developer with 15 years' experience. His career has mostly focused on embedded development for various devices such as phones, set-top boxes, and mobile telephony base stations, though he did make a slight detour into investment banking along the way. His language of choice (he has over 5 years' experience with it) is C++ because of its efficiency and predictable resource usage. Currently, his interests revolve around the architecture of distributed systems. He lives in Wroclaw, Poland.
Facilities
Location
Start date
Start date
About this course
Migrate a project on older versions of C++ to C++20/C++2a
Code more efficiently with string and numbers
New and better ways to work with string formatting using the new std::format in C++20/C++2a
Implement the new comparison operator on the core language and use a custom example in user-defined types
Discover newly improved synchronization and thread coordination, including support for efficient atomic waiting, lock-free integral types, and more
Use concepts to perform compile-time validation of template arguments and perform function dispatches based on type properties
Reviews
This centre's achievements
All courses are up to date
The average rating is higher than 3.7
More than 50 reviews in the last 12 months
This centre has featured on Emagister for 6 years
Subjects
- IDS training
- Syntax
- Printing
- Systems
- IDS
- IT
- Information Systems
- Programme Planning
- Programming
- IT Management
Course programme
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Identify four major features of C++20
- Identify important technical specifications
- Assess the scope of changes introduced in the new standard
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Examine the support for language features
- Examine the support for library features
- Examine the features that have no support at all
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Check how to enable/disable the examples for a section
- Build latest GCC from sources
- Invoke CMake and make use of the newly compiled GCC
- Print a hex number filled with zeros using stdio and iostreams
- Consider code from previous example, using std::format to achieve the same result
- Compare std::format to stdio and iostreams. Consider error handling of std::format
- Define simple text with integers and switch placeholders using IDs
- Consider formal syntax of std::format and compare to stdio
- Consider performance of std::format compared to other IO
- Format text to std::vector using std::back_inserter
- Format text to std::vector but preallocate memory, by getting the required size using std::formatted size
- Format text to c array using std::format_to_n
- Define struct person
- Define stream insertion operator for person
- Test printing person object using std::cout and std::format
- Consider inc.hpp contants and its usage of {fmt} library
- Consider changes required to migrate code from iostreams or stdio to std::format
- Consider how std::format interacts with stdio and iostreams in printing logs
- Print a hex number filled with zeros using stdio and iostreams
- Consider code from previous example, using std::format to achieve the same result
- Compare std::format to stdio and iostreams. Consider error handling of std::format
- Define simple text with integers and switch placeholders using IDs
- Consider formal syntax of std::format and compare to stdio
- Consider performance of std::format compared to other IO
- Format text to std::vector using std::back_inserter
- Format text to std::vector but preallocate memory, by getting the required size using std::formatted size
- Format text to c array using std::format_to_n
- Define struct person
- Define stream insertion operator for person
- Test printing person object using std::cout and std::format
- Consider inc.hpp contants and its usage of {fmt} library
- Consider changes required to migrate code from iostreams or stdio to std::format
- Consider how std::format interacts with stdio and iostreams in printing logs
- Print a hex number filled with zeros using stdio and iostreams
- Consider code from previous example, using std::format to achieve the same result
- Compare std::format to stdio and iostreams. Consider error handling of std::format
- Print a hex number filled with zeros using stdio and iostreams
- Consider code from previous example, using std::format to achieve the same result
- Compare std::format to stdio and iostreams. Consider error handling of std::format
- Print a hex number filled with zeros using stdio and iostreams
- Consider code from previous example, using std::format to achieve the same result
- Compare std::format to stdio and iostreams. Consider error handling of std::format
Additional information
C++ 20 (2a) New Features
