首先,我怀疑这是否可能,但如果可以,我很想知道如何做。我记得以前曾见过这种现象,但是可以在IDE中明确实现。

我有一个基本表单,然后将其继承为其他各种表单。在基本形式中,我有许多虚拟方法,这些虚拟方法将被继承的形式覆盖和实现。

有些虚拟方法希望在过程结束时调用inherited。但是,默认情况下,它会在开始时自动插入。这容易引起混乱,特别是忘记在结尾而不是开头进行调用。

如果可能,如何强制inherited插入结尾而不是开头(如下所示)?

procedure TMyForm.DoStuff;
begin

  inherited;
end;

最佳答案

您无法更改IDE的这种行为。

IDE知道某些方法,例如覆盖的析构函数,希望inherited语句出现在方法主体的末尾。对于此类方法,IDE确实在执行类完成时确实将对inherited的调用放置在方法主体的末尾。但是没有任何机制可以告诉IDE其他方法(它对此一无所知)将以这种方式处理。

07-25 23:38