Advertencia del compilador C4867
"function": falta la lista de argumentos de la llamada a la función; utilice "call" para crear un puntero al miembro
Un puntero a la función miembro se inicializó de manera incorrecta.
Esta advertencia se puede generar como resultado de un trabajo de conformidad del compilador para Visual Studio 2005: conformidad de puntero a miembro mejorada. El código compilado antes de Visual Studio 2005 ahora generará la advertencia C4867.
Esta advertencia siempre se emite como error. Para deshabilitar esta advertencia, use la pragma warning . Para más información sobre C4867 y MFC/ATL, consulte _ATL_ENABLE_PTM_WARNING.
Ejemplo
El ejemplo siguiente genera la advertencia C4867.
// C4867.cpp
// compile with: /c
class A {
public:
void f(int) {}
typedef void (A::*TAmtd)(int);
struct B {
TAmtd p;
};
void g() {
B b = {f}; // C4867
B b2 = {&A::f}; // OK
}
};