Funktionsaufruf mit Standardparameter

Ich habe eine Prüfung über C ++ geschrieben. Es gab eine Frage, bei der ich und mein Professor nicht übereinstimmten. Die Frage war, ob die folgende Funktion funktioniert oder nicht:

#include <iostream>
using namespace std;

void f(int=4, long=10, double=3.14);

int main( int argc , char ** argv )
{
    f( , ,8);
      return EXIT_SUCCESS;
}

void f(int i, long l, double d) {
    cout << i << " " << " " << l << " " << d;
}

Ich sagte, es würde nicht funktionieren, aber mein Professor sagte, es würde definitiv funktionieren, da der Standardparameter in der Funktionsdeklaration angegeben ist. Ich habe es mit MSVC versucht und es hat nicht funktioniert. Ist das compilerspezifisch? Wie kann ich meinen Professor davon überzeugen, dass es in keinem Compiler funktioniert, um meine Note in der Prüfung zu verbessern?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage