【发布时间】:2023-10-17 03:58:01
【问题描述】:
我可以在 FREE Pascal 中以某种方式查看 VMT 表吗? 如果 VMT 表在通过遗传连接的两个对象中具有相同数量的项目,我很感兴趣?
例如在这个模型中,VMT 表中的内容是什么?
所有函数或更多函数是否会有一个表([Ob1 AND Ob2] 之间的表和 [Ob2 AND Ob3] 之间的表)?
表格中有什么?
Ob1 = object
constructor Init;
function f1..; virtual;
function f2..; virtual;
end;
Ob2 = object(Ob1)
constructor Init;
function f1...; virtual;
function f2...; virtual;
function f3...; virtual;
end;
Ob3 = object(Ob2)
constructor Init;
function f1...; virtual;
function f2...; virtual;
function f3...; virtual;
end;
【问题讨论】:
-
作为一个有趣的问题,你为什么要问那些已经过时的对象,而不是更现代的类?
-
@MartynA 我只需要了解基于 Pascal 语言的 VMT 是如何工作的。
-
虽然它是关于 Delphi(FreePascal 的基础),但您可能会发现 this article 很有帮助,尤其是 Allen Bauer 的回答。直到最近,他还是 Borland/Embarcadero 的首席科学家,负责德尔福的开发。