编译器错误 C2383
“symbol”:此符号中不允许有默认参数
C++ 编译器不允许指向函数的指针有默认参数。
在 Visual Studio 2005 之前的版本中,Microsoft C++ 编译器接受此代码,但现在会给出错误。 对于适用于所有 Visual C++ 版本的代码,请勿将默认值分配给“指向函数的指针”参数。
示例
以下示例生成 C2383,并显示可能的解决方案:
// C2383.cpp
// compile with: /c
void (*pf)(int = 0); // C2383
void (*pf)(int); // OK