我理解 typedef 函数指针
typedef void (*myType) ( );
// ^ ^ ^
// return type type name arguments
myType x;
void myFunc() { std::cout<<"Hello\n"; }
x = &myFunc;
x(); // will print "Hello"
但我无法从位于https://github.com/obsproject/libdshowcapture/blob/master/source/external/IVideoCaptureFilter.h的OBS Studio源代码中理解这一行
//! Message callback
typedef void (CALLBACK* PFN_VIDEO_CAPTURE_FILTER_NOTIFICATION_CALLBACK)(VIDEO_CAPTURE_FILTER_NOTIFICATION nMessage, void* pData, int nSize, void* pContext);
我无法理解为什么CALLBACK*
和PFN_VIDEO_CAPTURE_FILTER_NOTIFICATION_CALLBACK
在一起,()
我应该如何理解这份声明?