Type Erasure
Learn the type erasure pattern to utilize common functionalities from unrelated types.
The term type erasure describes a pattern in which type information is removed, allowing types that are not necessarily related to be treated in a generic way. This isn’t something specific to the C++ language. This concept exists in other languages with better support than in C++ (such as Python and Java). There are different forms of type erasure, such as polymorphism and using void
pointers (a legacy of the C language, which is to be avoided), but true type erasure is achieved with templates. Before we discuss this, let’s briefly look at the others.
Get hands-on with 1400+ tech skills courses.