Beste mensen,
voor school ben ik bezig met een opdracht waarin een soort kaartenbak geimplementeerd moet worden op 2 manieren, met een array en met een stringlist.
Ik loop nu tegen een probleem aan bij een stringlist; een stukje code:
Code:
TPersonData =
class(TObject)
FamilyName: String;
Prefix: String;
Initials: String;
FirstName: String;
RoomNumber: String;
PhoneNumber: String;
end;
Code:
function Get(I: Integer): TPersonData; virtual; abstract;
Code:
TPersonList_StringList =
class(TPersonList)
protected
FList: TStringList;
Code:
function TPersonList_StringList.Get(I: Integer): TPersonData;
begin
// check pre-condition
Assert((0 <= I) and (I < FList.Count) ,
Format('TPersonList_StringList.Get.pre failed; I = %d',[I]));
Result := FList.Objects[I];
end;
Maar nu krijg ik Incomparable types TPersonData and TObject, terwijl TPersonData van TObject is afgeleid. Ik heb ook dingen geprobeerd als
temp: TObject;
temp := FList.Objects[I];
with temp as TPersonData do
begin
Result := temp;
end;
maar blijf dezelfde melding houden.
Iemand een suggestie, het moet voor morgen vroeg af