gpt4 book ai didi

Delphi:覆盖基本方法的代码完成

转载 作者:行者123 更新时间:2023-12-02 15:22:17 25 4
gpt4 key购买 nike

在类声明中,您可以按 Ctrl+Space 来获取基类中可重写的虚拟方法的列表。

不过,这个列表似乎非常有限。前任。

 TMyBaseClass = class(TInterfacedObject)
protected
procedure mymethod; virtual;
end;

TMyClass = class(TMyBaseClass)
protected
{Ctrl+Space here...}
end;

在 TMyClass 中,我从 TInterfacedObject 和 TObject 获取方法,但不是从 TMyBaseClass 获取方法。这是为什么?

-素食

编辑:忘记了我的 delphi 版本...我正在使用 2007。

最佳答案

因为有时这些 IDE 工具可以工作,有时则不能(而且这不是 Delphi/RAD Studio 独有的问题)。

例如,如果您还有其他未完成的编辑,这意味着 IDE 无法充分解析您的源代码直至当前插入点,那么此类内容很可能会被“损坏”。

在这种情况下,我个人会尝试快速按 Ctrl+F9 来查看是否存在我可能没有意识到的编译错误。十分之九的情况是这样的,修复这些问题就可以修复代码洞察行为。

在新单元中逐字重新创建示例,我按预期在代码完成列表中得到“mymethod”,因此在您的实际情况下,您的基类和派生类实际上可能被其他代码分隔开,也许即使在单独的单元中,并且在您尝试调用代码完成时,其他代码在两个声明“之间”包含错误?

作为一个更普遍的观点,现在最好将这些东西视为“有用时最好的东西”,但要尝试养成不依赖它们的习惯和做法。在这种情况下,唯一的替代方法是了解要重写的方法,我承认这没有多大帮助。

关于Delphi:覆盖基本方法的代码完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1443306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com