AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 08:17

Parameter dieser Suchanfrage:

Suche in Thema: Generische Interface-Liste
Suche alle Beiträge, die von "Stevie" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 6 von insges. 6 Treffern
Suche benötigte 0.004s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 28. Jul 2020
    Man macht auf generische Interfaces einfach kein Supports, mit dem man den generischen Typenparameter ändert, Ende der Geschichte.
    Dennoch ist für verschiedene Interne Verwendungszwecke eine GUID ggf notwendig.
  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 11. Feb 2012
    Hätt schwören können, da stand gestern was anderes, egal.

    Hab nicht dran gedacht, dass beim Add in die TInterfaceList auch nen QueryInterface gemacht wird, also wird T dann wieder auf IInterface "gecastet". Das musst du dann beim Get wieder umdrehen:

    function TGenericInterfaceList<T>.Get(Index: Integer): T;
    begin
    FInterfaces.QueryInterface(GetTypeData(TypeInfo(T)).Guid, Result);
    end;
  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 10. Feb 2012
    Nur, weil da TBlub.Create steht, wird noch lang kein TBlub in Add hineingegeben, sondern ein IBlub, denn das ist in diesem Fall T. Wenn eine Klasse A ein Interface B implementiert, sind Instanzen von Klasse A davon direkt zuweisungskompatibel zu Variablen vom Interface B.
  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 10. Feb 2012
    @Stahli: Da das Add von der generischen Liste ist, wird der Wert, der dort reingegeben wird, vom Typ T sein ;)

    Lösung:
    function TGenericInterfaceList<T>.Get(Index: Integer): T;
    begin
    Result := T(FInterfaces);
    end;

    Warum kein cast oder Supports? Na, weil das Interface, was du beim Add hineingibst, schon vom Typ T ist, was aber auch ein IInterface ist (Typeconstraint). Deshalb stehen in...
  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 8. Feb 2012
    Das konkrete Problem noch nie, aber nachdem ich den von dir geposteten Code kompiliert habe und bei beiden Prozeduren der Fehler kam, blieb ja nur noch die einzige Methode in der Klasse. Und dort fiel mir dann auf, dass ein IInterface in der Tat nicht zuweisungskompatibel zu einem IBlub ist :)
  • Forum: Object-Pascal / Delphi-Language

    AW: Generische Interface-Liste

      Delphi
      by Stevie, 8. Feb 2012
    Das ist das Problem:

    function TGenericInterfaceList<T>.Get(Index: Integer): T;
    begin
    Result := FInterfaces;
    end;


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=Stevie&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=166336
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz