Wie behandelt C++ Funktionszeiger in Bezug auf Funktionen mit voreingestellten Parametern?Funktionszeiger mit Standardparametern in C++
Wenn ich habe:
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);
Welche Funktionszeiger kann ich in Bezug verwenden, um die Funktion?
weil Standardparameter tatsächlich vom Compiler implementiert werden? – YeenFei
Weil Standardargumente für den Typ nicht berücksichtigt werden, d. H. "Int f (int)" und "int g (int = 0)" haben denselben Typ. –
Das würde func_ptr1 ausschließen. Was ist mit func_ptr3? –