2011-03-14 14 views
23

probé esteCómo declarar un puntero de función __stdcall

typedef void (* __stdcall MessageHandler)(const Task*); 

Esto compila pero me da esta advertencia (VS2003):

advertencia C4229: anacronismo utilizado: modificadores de datos se ignoran

Quiero declarar un puntero a una función con la convención de llamadas stdcall? ¿Qué estoy haciendo mal?

+6

Invertir el '__stdcall' y el' '*. –

Respuesta

43

Como MSDN says, la forma correcta de escribir esto es

typedef void (__stdcall *MessageHandler)(const Task*); 
Cuestiones relacionadas