2

在我创建了一个 TRecordSymbol 之后,如何向它添加构造函数和方法?我尝试使用 TMethodSymbol 收效甚微,因为我找不到定义方法执行的方法。

4

1 回答 1

1

方法符号(像所有 TFuncSymbol 一样)将执行推迟到接口(通过 Executable 属性定义)以进行“正常”执行(即,使用堆栈帧和参数评估并压入堆栈)。另一方面,“魔术”函数符号需要一个专用的表达式类,并且它们接管了整个函数调用(因此开销更少,但你必须保护自己免受所有事情的影响)。

对于示例,您可以查看 dwsMathComplex 和 3d 单元的作用,它们使用自定义方法引入记录。

于 2013-03-16T12:32:12.367 回答