float __stdcall (*pFunc)(float a, float b) = (float (__stdcall *)(float,float))0x411280;
Comment déclarer un pointeur de fonction avec une convention d’appel? Ce qui précède me donne une erreur.
L’astuce consiste à placer le __stdcall entre parenthèses comme ceci:
float (__stdcall *pFunc)(float a, float b) = (float (__stdcall *)(float,float))0x411280;
Bien sûr, il est recommandé d’utiliser un typedef à la place, mais le même truc s’applique:
typedef float (__stdcall *FuncType)(float a, float b);
__fastcall
est l’optimisé (convention d’appel le plus rapide) mais n’est pas utilisé pour une raison inconnue
Essayer:
int (__fastcall *myfunction)(int,float);