I was reading through the boost documentation on tuples and came across the following valid tuple instantiation (A, B and C are some user defined classes):
tuple<A, int(*)(char, int), B(A::*)(C&), C>
I couldn’t understand what the types of the 2nd and 3rd parameters were. What exactly are the int(*)(char, int) and B(A::*)(C&) types?
Is a pointer to a function accepting a
charand anintas parameter and returning anint.Is a pointer to a member function on an
Aobject, returningBand accepting a reference toCas a parameter.