如何翻译此声明?
typedef void (CALLBACK *pCompletePlay)(LONG lvrPlayHandle, LONG lUserData);
感谢。
答案 0 :(得分:2)
type pCompletePlay = procedure( lvrPlayHandle, lUserData: longint ); stdcall;
答案 1 :(得分:1)
在自然语言中,此声明表示:“Be pCompletePlay 指向具有两个 long 参数的函数的指针,使用stdcall调用约定”,作为宏CALLBACK定义为
#define CALLBACK __stdcall
在windef.h中。
这个delphi声明将是:
type
pCompleteplay : procedure( lvrPlayHandle, lUserData : LongInt);stdcall;
答案 2 :(得分:0)
没什么特别的。 pCompletePlay只是一种指向的函数指针 void(*)(LONG,LONG);
所以,当你写: pCompletePlay foo; // foo就像你宣布的那样是一个函数。