Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#16

AW: Generische Interface-Liste

  Alt 10. Feb 2012, 17:44
Lösung:
Delphi-Quellcode:
function TGenericInterfaceList<T>.Get(Index: Integer): T;
begin
  Result := T(FInterfaces[Index]);
end;
Genau diese Lösung habe ich ja im Moment und diese funktioniert nicht!

@XE2 Benutzer:
Hier wurden (mit Update 3 glaube ich) die Typecasts bei Generics etwas restriktiver. Deshalb muss man dort bei manchen solcher Typecasts einen kleinen Umweg über PPointer gehen. Das aber, meine ich mich zu erinnern, nur wenn man von T auf einen konkreten Typ möchte, welcher zwar durch die Programmlogik korrekt ist aber nicht über einen Typeconstraint gegeben ist.
Hast du hierzu mehr Informationen? Was genau in Bezug auf PPointer? Ich habe XE2, Update 3 installiert (und ja, ich weiß, dass es Update 4 gibt) und obige Lösung funktioniert leider nicht Ich habe echt keine Ahnung warum nicht... Sowas nervt ungemein...

Generics.Collections Klassen haben keine Interfaces.
Darüber hatte ich mich ja gewundert und daher habe ich diese Liste entworfen...
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat