- Preface
- 1. Fundamental Data Types
- 1.1. Integer Types
- 1.1.1. long long
- 1.2. Character Types
- 1.2.1. Sets and Encodings
- 1.2.2. New Types
- 1.2.3. Concatenation
- 1.2.4. Library Support
- 2. Initialization
- 2.1. Non-static Data Members
- 2.2. List Initialization
- 2.3. Structured Binding
- 3. Memory Alignment
- 4. Compile Time Evaluation
- 4.1. constexpr
- 4.2. std::numeric_limits
- 4.3. Math functions
- 4.4. Lambdas
- 4.5. Inlining constexpr
- 4.6. Conditional Compilation
- 4.7. Virtual Functions
- 4.8. try-catch
- 4.9. constexpr Object
- 4.10. consteval and constinit
- 4.11. std::is_constant_evaluated
- 4.12. Other Enhancements
- 5. Type Deduction
- 5.1. Introduction
- 5.2. Mechanisms
- 5.3. Rules
- 5.4. Best Practices
- 6. Type Introspection
- 6.1. Introduction
- 6.2. Mechanisms
- 6.3. Rules
- 6.4. Best Practices
- 7. Namespace
- 7.1. Inline
- 7.2. Nested
- 7.3. Unnamed
- 7.4. Merged
- 7.5. Global
- 8. Program Structure
- 9. Control Flow
- 10. Exceptions and Assertion
- 10.1. static_assert
- 10.2. noexcept
- 11. Class
- 12. Value Syntax
- 13. Template and Generic Programming
- 14. Ranges and View
- 15. Concurrency
- 16. Attributes and Preprocessor
- 17. Semantics Improvements
- 17.1. inline Specifier
- 17.2. Miscellaneous