我最终使用记录助手作为一种解决方法,因为Delphi不允许记录类型的前向声明。
至少它会编译,但我对Intellisense没有采用这些辅助方法这一事实感到不满:
Extents.TransformBy(Matrix);
TransformBy是一个辅助方法。上面的代码编译得很好,但是TransformBy根本不会出现在Intellisense List中。我重新启动IDE以防万一,但仍然没有运气。我使用的是Delphi XE 2。
我发现以下关于课程助手的陈述:
真正的类助手是幕后的编译器技巧 只是在类上运行的函数,但它没有对名称进行规范 空格,使用intellisense 。
http://blogs.conceptfirst.com/blog/2006/05/08/class-helpers-good-or-bad/
所以我仍然希望这可能最终奏效。
答案 0 :(得分:3)
在XE2中,当您键入.
和/或按 CTRL + space 时,在记录助手中声明的方法不会显示在可用方法列表中大骨节病>。根据我的实验,似乎XE5解决了这个问题,而XE5 Intellisense可以看到辅助方法。
如果只有Embarcadero允许记录的前向声明,那么我们就不需要求助于记录助手来使我们的类型表现出来。