-1
我需要将此行从C转换为Delphi。将C代码转换为Delphi
Int CALLBACK EXPORT EXAMPLEFUNCTION(VOID){
SETEVENT(hasync);
Return Success;
}
请给我一些帮助。
感谢;)猜测这里的
我需要将此行从C转换为Delphi。将C代码转换为Delphi
Int CALLBACK EXPORT EXAMPLEFUNCTION(VOID){
SETEVENT(hasync);
Return Success;
}
请给我一些帮助。
感谢;)猜测这里的
类,因为风格是非常的混乱,但我认为这将翻译是这样的:
const Success = 1; //or whatever; might not be 1.
//assume a const definition for a value
//called Success exists somewhere in scope
function EXAMPLEFUNCTION(): integer; stdcall; //CALLBACK = stdcall calling convention
begin
SETEVENT(hasync); //hopefully this makes sense in context
result := Success;
end;
这还没有进一步的方面,我能做到的最好。 EXPORT
声明是一个预处理器宏,它(可能)意味着它是DLL的一部分,并且这是一个应该由加载该DLL的程序调用的函数。在Delphi中,这不是函数定义的一部分;相反,你把它放在出口条款。
谢谢这是一个好主意。 –
有很多自动* .h到pascal转换器。只需将定义与实施分开;这里的实现是微不足道的。 –
@ Arioch'所有这些.h到Pascal转换器的问题是,它们只是转换单个.h,而不解析包含和宏。所以很多转换最终都是纯粹的老手工,并且有很多有教养的猜测。 –