How to declare an __stdcall function pointer

2019-01-23 23:39发布

问题:

I tried this

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

This compiles but gives me this warning (VS2003):

warning C4229: anachronism used : modifiers on data are ignored

I want to declare a pointer to a function with stdcall calling convention? What am I doing wrong?

回答1:

As MSDN says, the correct way to write this is

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