在过去的几天里,我一直在 Delphi XE2 中使用 3rd 方服务,并且即将完成。我遇到了一个绝对难倒我的问题,我认为应该有非常明显的答案。我希望另一双眼睛能告诉我我的问题是什么。
我有这个界面:
IWorshipTeamEvent = Interface(IInterface)
function GetId : integer;
function GetName : string;
function GetTeamId : integer;
function GetStartDate : TDate;
function GetEndDate : TDate;
function GetStartTime : TTime;
function GetEndTime : TTime;
function GetSets : IWorshipTeamSetList;
property Id : integer read GetId;
property Name : string read GetName;
property TeamId : integer read GetTeamId;
property StartDate : TDate read GetStartDate;
property EndDate : TDate read GetEndDate;
property StartTime : TTime read GetStartTime;
property EndTime : TTime read GetEndTime;
property Sets : IWorshipTeamSetList read GetSets;
end;
然后在同一个单元的另一个类中,我试图IWorshipTeamEvent
在这个函数中返回一个:
function TWorshipTeamEventList.GetEvent(index: Integer) : IWorshipTeamEvent;
begin
//fEvents is a TInterfaceList that contains only IWorshipTeamEvents
Result := fEvents[index] as IWorshipTeamEvent;
end;
此时,我得到了编译器错误Operator not applicable to this operand type
。我已经尝试了一些东西,比如创建一个类型为的temp
变量IXmlResponseType
temp := fEvents[index] as IXmlResponseType;
Result := nil;
已编译,所以我尝试temp
使用一种类型进行IWorshipTeamEvent
创建
temp := fEvents[index] as IWorshipTeamEvent;
Result := nil;
没有编译。
非常感谢任何建议