How does C++ handle function pointers in relation to functions with defaulted parameters?
If I have:
void foo(int i, float f = 0.0f);
void bar(int i, float f);
void (*func_ptr1)(int);
void (*func_ptr2)(int, float);
void (*func_ptr3)(int, float = 10.0f);
Which function pointers can I use in relation to which function?
Default argument cannot be provided for pointers to functions.
Both
foo()
andbar()
can only be assigned tofunc_ptr2
.§8.3.6/2: