Opleiding: What's new in C++23 (English)

Lesmethode :

Klassikaal

Algemeen :

In the course What's New in C++23 you learn about the additions and changes introduced in the C++23 standard and how to use them in modern C++ development. The course focuses on developers who already work with C++ and want to understand the latest language features and library enhancements. You examine what has changed compared to earlier standards and where these new capabilities fit within day-to-day software development.

The course covers the most important updates in C++23, including new language functionality and additions to the standard library. You explore the purpose of these changes and their impact on writing, maintaining and modernising C++ code. Attention is given to practical usage and to understanding when the new features provide advantages over existing approaches.

Throughout the course, the new C++23 capabilities are discussed in the context of real-world software development. By comparing new and existing techniques, you gain a clear understanding of how the latest standard can be applied within current codebases. After completing the course, you can evaluate and adopt C++23 features in a structured and informed way.

Doel :

After this course, you can identify the most important additions in C++23 and apply them in your own C++ projects. You can also assess when new language and library features are appropriate for a specific development scenario.

Doelgroep :

Anyone working with C++, such as software developers, application developers and technical specialists who want to update their knowledge of the latest C++ standard.

Voorkennis :

The following prior knowledge is required:

- What's new in C++20 (English)

- Practical experience with C++, the course sometimes goes very deep into C++ because new functionality is often in the more difficult parts of the language.

Onderwerpen :


- Core Language Changes
- String Formatting Improvements
- Standard Library Modules
- Flat Maps and Sets
- std::mdspan
- std::generator
- String and string_view Improvements
- Monadic Operations for std::optional
- Stacktrace Library
- Changes to the Ranges Library
- Changes to the Views Library
- std::expected
- Utility Additions
- Core Language Changes
+nbsp;+nbsp;+nbsp;- Explicit Object Parameters (deducing this)
+nbsp;+nbsp;+nbsp;- If consteval
+nbsp;+nbsp;+nbsp;- Multidimensional Subscript Operator
+nbsp;+nbsp;+nbsp;- Attributes on Lambda Expressions
+nbsp;+nbsp;+nbsp;- Literal Suffix for size_t
+nbsp;+nbsp;+nbsp;- auto(x): decay-copy in the language
+nbsp;+nbsp;+nbsp;- elifdef,
- elifndef and
- warning
+nbsp;+nbsp;+nbsp;- Marking Unreachable Code
+nbsp;+nbsp;+nbsp;- Assumptions
+nbsp;+nbsp;+nbsp;- Named Universal Character Escapes
+nbsp;+nbsp;+nbsp;- Trim Whitespace Before Line Splicing
- String Formatting Improvements
+nbsp;+nbsp;+nbsp;- New Formatting Options
+nbsp;+nbsp;+nbsp;- std::format Extensions
+nbsp;+nbsp;+nbsp;- Performance Improvements
- Standard Library Modules
+nbsp;+nbsp;+nbsp;- Module Basics
+nbsp;+nbsp;+nbsp;- Importing Standard Library Modules
+nbsp;+nbsp;+nbsp;- Benefits of Modules
- Flat Maps and Sets
+nbsp;+nbsp;+nbsp;- std::flat_map
+nbsp;+nbsp;+nbsp;- std::flat_set
+nbsp;+nbsp;+nbsp;- Performance Characteristics
+nbsp;+nbsp;+nbsp;- Use Cases
- std::mdspan
+nbsp;+nbsp;+nbsp;- Multidimensional Views
+nbsp;+nbsp;+nbsp;- Layout Policies
+nbsp;+nbsp;+nbsp;- Accessor Policies
+nbsp;+nbsp;+nbsp;- Practical Applications
- std::generator
+nbsp;+nbsp;+nbsp;- Coroutine-Based Generators
+nbsp;+nbsp;+nbsp;- Lazy Evaluation
- Range Integration
+nbsp;+nbsp;+nbsp;- Practical Examples
- String and string_view Improvements
+nbsp;+nbsp;+nbsp;- basic_string(_view)::contains()
+nbsp;+nbsp;+nbsp;- Construct string(_view) from nullptr
+nbsp;+nbsp;+nbsp;- basic_string::resize_and_overwrite()
+nbsp;+nbsp;+nbsp;- Performance Optimizations
- Monadic Operations for std::optional
+nbsp;+nbsp;+nbsp;- and_then()
+nbsp;+nbsp;+nbsp;- or_else()
+nbsp;+nbsp;+nbsp;- transform()
+nbsp;+nbsp;+nbsp;- Functional Programming Patterns
- Stacktrace Library
+nbsp;+nbsp;+nbsp;- std::stacktrace
+nbsp;+nbsp;+nbsp;- Capturing Stack Traces
+nbsp;+nbsp;+nbsp;- Debugging Applications
+nbsp;+nbsp;+nbsp;- Platform Support
- Changes to the Ranges Library
+nbsp;+nbsp;+nbsp;- New Range Adaptors
+nbsp;+nbsp;+nbsp;- Range Algorithm Extensions
+nbsp;+nbsp;+nbsp;- Performance Improvements
- Changes to the Views Library
+nbsp;+nbsp;+nbsp;- New Views
+nbsp;+nbsp;+nbsp;- View Composability Improvements
+nbsp;+nbsp;+nbsp;- Practical Applications
- std::expected
+nbsp;+nbsp;+nbsp;- Error Handling Without Exceptions
+nbsp;+nbsp;+nbsp;- Monadic Operations
+nbsp;+nbsp;+nbsp;- Comparison with std::optional
+nbsp;+nbsp;+nbsp;- Best Practices
- Utility Additions
+nbsp;+nbsp;+nbsp;- std::move_only_function<>
+nbsp;+nbsp;+nbsp;- std::spanstream
+nbsp;+nbsp;+nbsp;- std::byteswap()
+nbsp;+nbsp;+nbsp;- std::to_underlying()

Meer...
€780
ex. BTW
Aangeboden door
Vijfhart opleidingen
Onderwerp
C/C++
Niveau
Looptijd
1 dag
Taal
en
Type product
cursus
Lesvorm
Klassikaal
Aantal deelnemers
Max: 12
Tijdstip
Overdag
Keurmerken aanbieder
Cedeo
VOI
Oracle Education Partner
AgilePM - Agile Project Management (APMG)
EXIN
Microsoft Learning Partner
Erkend keurmerk
CRKBO en BTW-vrijstelling
CRKBO zonder BTW vrijstelling
IPMA