Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在我创建了一个 TRecordSymbol 之后,如何向它添加构造函数和方法?我尝试使用 TMethodSymbol 收效甚微,因为我找不到定义方法执行的方法。
方法符号(像所有 TFuncSymbol 一样)将执行推迟到接口(通过 Executable 属性定义)以进行“正常”执行(即,使用堆栈帧和参数评估并压入堆栈)。另一方面,“魔术”函数符号需要一个专用的表达式类,并且它们接管了整个函数调用(因此开销更少,但你必须保护自己免受所有事情的影响)。
对于示例,您可以查看 dwsMathComplex 和 3d 单元的作用,它们使用自定义方法引入记录。