Ошибка компилятора C2383

Символ: аргументы по умолчанию не допускаются для этого символа.

Компилятор C++ не разрешает аргументы по умолчанию для указателей на функции.

Этот код был принят компилятором Microsoft C++ в версиях до Visual Studio 2005, но теперь дает ошибку. Для кода, работающего во всех версиях Visual C++, не присваивайте значение по умолчанию аргументу указателя на функцию.

Пример

В следующем примере создается C2383 и показано возможное решение:

// C2383.cpp
// compile with: /c
void (*pf)(int = 0);   // C2383
void (*pf)(int);   // OK