вызов функции с параметром по умолчанию

Я написал экзамен по программированию на C ++. Был один вопрос, где я и мой профессор не согласились. Вопрос был в том, работает ли следующая функция:

#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;
}

Я сказал, что это не будет работать, но мой профессор сказал, что это точно будет работать из-за параметра по умолчанию в объявлении функции. Я попробовал это с MSVC, и это не сработало. Это зависит от компилятора? Как я могу убедить своего профессора, что он не работает ни в одном компиляторе, поднять мою оценку на экзамене?

Ответы на вопрос(4)

Ваш ответ на вопрос