9.3. Template Function Instantiation

A template function definition is a blueprint for function calls. When you call a template function, the compiler “fills in” each TYPE from the template function's signature (and the body of the function, if applicable) with a type from the calling function's argument. We call this parameter substitution instantiation. Instantiations generate separate function definitions every time you call a template function with a different type. Type matching must be exact since conversion rules do not apply between a function call argument type and a template function TYPE.

Using export

Template functions instantiate from inline and non-inline definitions. When a program includes a header file with an inline template ...

Get Navigating C++ and Object-Oriented Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.