AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Spring4D Collections: IList.Where gibt ein TWhereIterator zurück
Thema durchsuchen
Ansicht
Themen-Optionen

Spring4D Collections: IList.Where gibt ein TWhereIterator zurück

Ein Thema von Friday · begonnen am 30. Jan 2020 · letzter Beitrag vom 30. Jan 2020
 
Friday

Registriert seit: 6. Mai 2008
106 Beiträge
 
Delphi 12 Athens
 
#1

Spring4D Collections: IList.Where gibt ein TWhereIterator zurück

  Alt 30. Jan 2020, 12:30
Hallo,
ich habe eine
IList<IMyIntf> nun möchte ich diese Liste nach bestimmten Eigenschaften filtern, wozu ich diese Liste einer Funktion als Parameter übergebe und als Rückgabewert wieder eine IList<IMyIntf> bekomme / bekommen möchte.
Delphi-Quellcode:
function FilterNachBlau(aList: IList<IMyIntf>): IList<IMyIntf>;
begin
  Result := IList<IMyIntf>(aList.Where(function(const aMyIntf: IMyIntf): boolean
                          begin
                            Result := aMyIntf.InnerColor = clBlau;
                          end);
end;
Den Typecast ist notwendig da die Where Methode ein IEnumerable zurück gibt. Da IList von IEnumerable abgeleitet ist, sollte es keine Schwierigkeiten geben.

Der Debugger sagt mir nun aber dass der zurück gelieferte Typ "TWhereIterator" ist.
Und sobald ich auf die zurück gelieferte IList (die wohl keine IList ist) zugreife, kommt eine Exception "privileged instruction at 0x00e638e2"

Was mache ich falsch, bzw. geht das filtern auch anders? (natürlich ginge es in einer for schleife alles einzeln durchzugehen, das sollte aber nicht Sinn der Sache sein)

danke
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz