January 2019
Intermediate to advanced
512 pages
14h 5m
English
The friend factory is a pattern that synthesizes a non-template, non-member function from every instantiation of a class template—every time the template is instantiated on a new type, a new function is generated. For its parameters, this function can use any types we can declare in that instantiation of the class template. Usually, this is the class itself, but it can be any type the template knows about.
In this manner, the friend factory can be employed together with the Curiously Recurring Template Pattern (CRTP) that we studied in an Chapter 7, The Curiously Recurring Template Pattern. Recall that the main idea of the CRTP is that a class inherits from an instantiation ...