C++20 Concepts offer a cleaner, more expressive way to place constraints on templates—and make those constraints visible to anyone using them. Here, we’ll look at how Concepts can ensure that every argument in a variadic template has the same data type. Keep It Tight: Restrict Variadic Templates Using C++20 Concepts by Andreas Fertig From the article: I previously wrote about C++20’s Concepts.