gpt4 book ai didi

delphi - 什么是安全调用?

转载 作者:行者123 更新时间:2023-12-03 14:35:44 28 4
gpt4 key购买 nike

我正在使用 VB6 创建 ActiveX EXE,我得到的唯一示例都是用 Delphi 编写的。

阅读示例代码,我注意到有些函数的签名后面带有 safecall 关键字。这是一个例子:

function AddSymbol(ASymbol: OleVariant): WordBool; safecall;

该关键字的用途是什么?

最佳答案

Safecall 从右到左传递参数,而不是 pascal 或 register(默认)从左到右传递参数

使用 safecall,过程或函数在返回时从堆栈中删除参数(类似于 pascal,但不像 cdecl,由调用者决定)

Safecall 实现了异常“防火墙”;特别是在 Win32 上,这实现了进程间 COM 错误通知。否则它与 stdcall 相同(与 win api 一起使用的另一个调用约定)

关于delphi - 什么是安全调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/96042/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com