我最终使用记录助手作为 Delphi 不允许前向声明记录类型的解决方法。
至少它可以编译,但我对 Intellisense 没有拾取这些辅助方法这一事实相当不满意:
Extents.TransformBy(Matrix);
TransformBy 是一个辅助方法。上面的代码编译得很好,但是 TransformBy 根本没有出现在 Intellisense 列表中。我重新启动IDE以防万一,但仍然没有运气。我正在使用 Delphi XE 2。
我发现以下关于类助手的声明:
实际上,类助手是一种编译器技巧,在幕后它只是对类进行操作的函数,但它不会污染名称空间,并且可以与 intellisense 一起使用。
http://blogs.conceptfirst.com/blog/2006/05/08/class-helpers-good-or-bad/
所以我仍然希望这最终会奏效。