我TObject
在 Delphi XE7 (Firemonkey) 中有几个类 (of),它们有一个属性AsJson
:
uses
System.Classes, System.SysUtils, XSuperObject;
type
TMyObject = class(TObject)
public
property AsJson: ISuperObject read GetAsJson;
end;
但是,编译器给我这些警告:
[dcc32 Warning] MyUnit.pas(383): W1009 Redeclaration of 'AsJson' hides a member in the base class
我正在查看的基类中TObject
没有看到这样的东西,如果我要尝试使用它,它也不是一个有效的字段。我在文档中看不到有关此类属性的任何内容。仅当属性类型是(至少几周前来自 SVN ISuperObject
)的最新版本时,才会出现这种情况。XSuperObject
我也尝试过使用类型Integer
,我也明白了。
这个警告在我的场景中意味着什么,我该如何摆脱它?
编辑
它似乎只在我有XSuperObject
使用条款时才会发生......
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
XSuperObject in 'C:\...\XSuperObject.pas',
XSuperJSON in 'C:\...\XSuperJSON.pas';
type
TMyObject = class(TObject)
private
FTest: Integer;
public
property AsJson: Integer read FTest;
end;
begin
end.
上面的例子产生:
[dcc32 Warning] Project1.dpr(17): W1009 Redeclaration of 'AsJson' hides a member in the base class
如果我只是删除XSuperObject
,我不会收到此警告。我的 XSuperObject 副本已经有几周的历史了。