Thema: Delphi Generics in Delphi

Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: Generics in Delphi

  Alt 27. Nov 2009, 08:27
Hi,

Habe gerade ein kleines Problem...

EDIT: Und die Lösung lautet:

Result := Default(T); =====

Delphi-Quellcode:
IAssignable = interface(IUnknown)
  procedure Assign(AObject: TObject);
end;

TMeineKlasse<T: Class, Constructor, IAssignable> = class;
Funktioniert prinzipiell wunderbar. Aber ich habe dann folgendes in meinem Code:

Delphi-Quellcode:
function TMeineKlasse<T>.GetT: T;
begin
  if FIndex = -1 then
    Result := nil
  else
    Result := FData[FIndex];
end;
Das funktioniert allerdings nur wenn ich IAssignable aus den Einschränkungen entferne...

So funktioniert es:
TMeineKlasse<T: Class, Constructor> = class; Und so
TMeineKlasse<T: Class, Constructor, IAssignable> = class; bekomme ich die Fehlermeldung

Zitat:
[DCC Fehler] Inkompatible Typen: 'T' und 'Pointer'
in der Zeile

Result := nil Das finde ich ziemlich...blöd! Wieso funktioniert das denn jetzt nicht mehr? -.-

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat