Erreur du compilateur C2383
'symbol' : les arguments par défaut ne sont pas autorisés sur ce symbole
Le compilateur C++ n’autorise pas les arguments par défaut sur les pointeurs vers les fonctions.
Ce code a été accepté par le compilateur Microsoft C++ dans les versions antérieures à Visual Studio 2005, mais donne maintenant une erreur. Pour le code qui fonctionne dans toutes les versions de Visual C++, n’affectez pas de valeur par défaut à un argument pointeur à fonction.
Exemple
L’exemple suivant génère l’erreur C2383 et montre une solution possible :
// C2383.cpp
// compile with: /c
void (*pf)(int = 0); // C2383
void (*pf)(int); // OK