我正在使用下面的 C++ 示例在 Delphi 中编写一个 DLL:
USERDLL_API double process_message (const char* pmessage, const void* param)
{
if (pmessage==NULL) { return 0; }
if (param==NULL) { return 0; }
if (strcmp(pmessage,"state")==0)
{
current_state *state = (current_state*) param;
return process_state( (current_state*)param );
}
}
不幸的是,我对 C++ 和指针几乎一无所知。我应该使用什么来代替 char* (PChar?) 和 void*?
function process_message (const pmessage: PChar; const param: ???): Double; export;
begin
???
end;
exports process_message;
对函数主体的任何帮助也将受到高度赞赏。我意识到这不是火箭科学,但是如果有人愿意为我做这件事,我不会仅仅为了转换几行而学习 C++ 的基础知识:-)