gpt4 book ai didi

delphi - 为什么编译器给我这个错误: Declaration of 'GetItem' differs from previous declaration?

转载 作者:行者123 更新时间:2023-12-01 19:27:20 27 4
gpt4 key购买 nike

这是给我错误的代码:

TAdvSmoothDockItems = class(TCollection)
private
FOwner: TAdvSmoothDock;
FOnChange: TNotifyEvent;
protected
function GetItem(Index: Integer): TAdvSmoothDockItem; virtual; //YLM_TMS_01
procedure SetItem(Index: Integer; const Value: TAdvSmoothDockItem); virtual; //YLM_TMS_01
function GetOwner: TPersistent; override;
public
constructor Create(AOwner: TAdvSmoothDock); overload; virtual; //YLM_TMS_01
function Add: TAdvSmoothDockItem; virtual; //YLM_TMS_01
function Insert(Index: Integer): TAdvSmoothDockItem; virtual; //YLM_TMS_01
property Items[Index: Integer]: TAdvSmoothDockItem read GetItem write SetItem; default;
procedure Delete(Index: Integer); virtual; //YLM_TMS_01
published
property OnChange: TNotifyEvent read FOnChange write FOnChange;
end;


TKHAdvSmoothDockItems = class(TAdvSmoothDockItems)
private
FOwner: TKHAdvSmoothDock;
FOnChange: TNotifyEvent;
protected
function GetItem(Index: Integer): TKHAdvSmoothDockItem; override;
procedure SetItem(Index: Integer; const Value: TKHAdvSmoothDockItem); override;
function GetOwner: TPersistent; override;
public
constructor Create(AOwner: TKHAdvSmoothDock);
function Add: TKHAdvSmoothDockItem;
function Insert(Index: Integer): TKHAdvSmoothDockItem;
property Items[Index: Integer]: TKHAdvSmoothDockItem read GetItem write SetItem; default;
procedure Delete(Index: Integer); override;
published
property OnChange: TNotifyEvent read FOnChange write FOnChange;
end;

这段代码给了我以下错误:

E2037 “GetItem”声明与之前的声明不同

为什么?我已将基类中的 GetItem 声明为“虚拟”,然后我尝试在下一类(TKHAdvSmoothDockItems)中覆盖它...?如何解决?

最佳答案

因为

function GetItem(Index: Integer): TAdvSmoothDockItem; virtual;

不同于

function GetItem(Index: Integer): TKHAdvSmoothDockItem; override;

结果类型必须相同。

关于delphi - 为什么编译器给我这个错误: Declaration of 'GetItem' differs from previous declaration?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11434344/

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