C++ Cookbook: How to write great code with the latest C++ releases
- Length: 622 pages
- Edition: 1
- Language: English
- Publisher: BPB Publications
- Publication Date: 2024-04-18
- ISBN-10: 9355515375
- ISBN-13: 9789355515377
Getting up to speed with the latest C++ features
Key Features
- Learning about the newest features of C++23 and C++20.
- Understanding how to make your code cleaner, faster, and easier.
- Enhancing the safety, readability, and performance of your code.
Description
C++ continues to remain relevant despite the advent of many new modern languages. This book dives into the significant features of C++20 (“big four”) and C++23, addressing challenges and improving development. You will learn how to write cleaner, more efficient, and safer code. From organizing your projects better to handling complex tasks easily, this guide equips you to take your C++ skills to the next level.
We start by discussing basic concepts and learning how to use them in templates. Then, we explore advanced topics like asynchronous programming with coroutines and tools for handling multiple tasks at once. You will discover C++ modules for building modular applications to organize code better. You will learn about ranges for processing data sequences efficiently, including views and adaptors for transforming and filtering data. Further, you will explore new features for containers, cleaner coding practices, and performance optimizations in C++20/23.
The most challenging yet intriguing part about C++ is that it has evolved over the decades. Due to these changes, you will often find different ways of doing the same thing. The book describes the latest features in detail. It shows how you can do your job in the best manner, by implementing these features in the latest, fastest, cleanest, and safest way.
What you will learn
- Coroutines to create code that handles asynchronous tasks seamlessly.
- Process sequences of data efficiently using ranges and range-based for loops.
- Utilize improvements and new functionalities for existing containers like vector, list, map, and set.
- New features like improved range adaptors, functional programming constructs, and lambda enhancements.
- User-defined literals, filesystem library enhancements, and type safety features offered by concepts.
Who this book is for
This book empowers C++ programmers, from experienced professionals to those looking to level up their skills, by teaching the latest features for writing cleaner, more efficient, and powerful C++ code.
Table of Contents
1. Working with Concepts
2. Using the New Core Language Concepts
3. Using the New Comparison Concepts
4. Using the New Iterator Concepts
5. Using the New Object Concepts
6. Using the New Callable Concepts
7. Const Related Specifiers
8. Concurrent Processing
9. Coroutines
10. Organizing Your Code with Modules
11. Introduction to Ranges and Views
12. Range Access and Non-Modifying Sequence Functions for Ranges
13. Range Algorithms: Sort, Search and More
14. Range Algorithms: Memory and Modification Functions
15. Views and Range Adaptors
16. Range Factories and Utilities
17. New Features for Containers
18. Making it Easier to Code
19. Making Your Code Cleaner
20. Making Your Code Safer
21. Making Your Code Faster and Easier to Debug