Ich frage mich, was ist der Unterschied zwischen diesen 2 Funktionen ( fun
und fun2
) Ich weiß, dass fun2
ist Funktionszeiger, aber was mit fun
? Ist das dasselbe, weil es auch einen Zeiger gibt, der ein Funktionsname ist?
Ist das das Gleiche, weil es auch einen Zeiger gibt, der ein Funktionsname ist?
Ja. Dies ist von C geerbt. Es ist nur für die Bequemlichkeit. Sowohl fun als auch fun2 nehmen einen Zeiger vom Typ "void ()" auf.
Diese Bequemlichkeit darf vorhanden sein, denn wenn Sie die Funktion mit Klammern aufrufen, gibt es KEINE AMBIGUITÄT. Sie müssen eine Funktion aufrufen, wenn Sie eine Argumentliste in Klammern haben.
Wenn Sie Compilerfehler deaktivieren, funktioniert der folgende Code auch:
%Vor%Tags und Links c++ function-pointers