Tag: C++
All the articles with the tag "C++".
-
std::generator: Standard Library Coroutine Support
Published:Generate sequences of values on-demand with coroutines
-
C++23's Fold Algorithms
Published:Better folds for a modern language
-
C++23's Deducing this
Published:What it is, why it is, how to use it
-
Abbreviated Function Templates and Constrained Auto
Published:C++20 features for more terse template code
-
Conditionally Trivial Special Member Functions
Published:Why triviality matters and how you can propagate it
-
The Performance Benefits of Final Classes
Published:How the final keyword aids devirtualization and makes your code faster
-
C++20's Conditionally Explicit Constructors
Published:What this feature is, and how it simplifies code
-
Clear, Functional C++ Documentation with Sphinx + Breathe + Doxygen + CMake
Published:Tools and techniques to make your documentation better
-
Guaranteed Copy Elision Does Not Elide Copies
Published:It should be "deferred temporary materialization"
-
Spaceship Operator
Published:C++20's feature for better comparisons
-
Simple Named Boolean Arguments
Published:A handy trick
-
Function Template Partial Ordering: Worked Examples
Published:For deconfounding complex template rules
-
std::accumulate vs. std::reduce
Published:The differences between the two and when you should use them
-
No More Pointers
Published:This was a joke post, please don't shout at me
-
Do Compilers Take Inline as a Hint?
Published:Do compilers really ignore the inline keyword for optimizations?
-
Passing Overload Sets to Functions
Published:The nightmare of higher-order functions plus overloading
-
A Call for Data on Exceptions
Published:Are exceptions really expensive?
-
Functional Exceptionless Error Handling with Optional and Expected
Published:How std::optional and std::expected can improve our error handling code
-
Detection Idiom: A Stopgap for Concepts
Published:How C++20 concepts will make our lives better, and how the detection idiom gets us part way there
-
Learning C++
Published:Tips and resources
-
void C::C::C::A::A::A::foo(): Valid Syntax Monstrosity
Published:Please don't write this code
-
C++17 attributes: maybe_unused, fallthrough and nodiscard
Published:New attributes in C++17 and how they can help you
-
Metaclasses for Embedded Domain Specific Languages
Published:How metaclasses could be used to generate code for languages embedded in C++
-
Accelerating your C++ on the GPU with SYCL
Published:Writing code targeting heterogeneous processors from standard C++
-
Initialization in C++ is Bonkers
Published:Just absurd
-
Template Argument Deduction for Class Template Constructors
Published:How to use class template argument deduction in C++17
-
Lazy Generators: Template Deduction on the Left-Hand Side
Published:Deducing template arguments based on assignment context
-
Simplifying Templates and #ifdefs with if constexpr
Published:Making your code simpler and more maintainable
-
Type Erasure with Unified Call Syntax
Published:Supporting member and non-member call syntax while bridging compile time and run time
-
Exploding Tuples with Fold Expressions
Published:Iterating over tuples without the pain
-
Selective Default Template Arguments
Published:Several options for ergonomic templates with many default arguments
-
Declaring Classes in Function Declarations
Published:You can do this, but don't
-
The Effect of a try-catch-rethrow
Published:A subtle way in which try-catch-rethrow blocks are not equivalent to standard blocks
-
integral_variable: A compile-time assignable variable
Published:Metaprogramming horrors
-
Adding C++17 Structured Bindings Support to Your Classes
Published:How you can destructure your own custom classes in an ergonomic way
-
Stack and Heap: Commonly Misused Terms
Published:Why many uses of these terms are inaccurate and confusing, and what you should use instead