Einzelnen Beitrag anzeigen

ryLIX

Registriert seit: 16. Nov 2008
Ort: Westoverledingen
264 Beiträge
 
RAD-Studio 2009 Pro
 
#23

Re: Von TObjectList<T> erben?

  Alt 17. Feb 2010, 18:27
Ich muss noch ma was Fragen...
Die generische Liste bietet mir ja bei der ObjectList die möglichkeit auf TypeCasts zu verzichten.

Also sollte doch bei meiner TNonFoodList welche von TObecjtList<TNonFood> erbt folgender aufruf funktionieren:
Delphi-Quellcode:
var
  s: string;
begin
s:= locNonFoodList.Items[X].Artikelname;
end;
TNonFood enthält natürlich ein Feld welches Artikelname heißt.

Nur wird mir Artikelname im Code Editor rot unterstrichen aber er compilliert trotzdem...
Warum?

Und dann wollte ich mein CustomSort übernehmen und hab da gleich das nächste Problem ...
Delphi-Quellcode:
procedure TNonFoodList.Sortieren(SortBy: TNonFoodArtikelEnum);
begin
  NonFoodArtikelSortieren := SortBy;
  Self.Sort(TComparer<TNonFood>.Construct(
            function (Left, Right: TNonFood): Integer
            begin
              case NonFoodArtikelSortieren of
                Artikelname: CompareText(Left.Artikelname, Right.Artikelname);
                Menge: CompareValue(Left.Menge, Right.Menge);
                Preis: CompareValue(Left.Preis, Right.Preis);
                Kosten: CompareValue(Left.Kosten, Right.Kosten);
              end;
            end));
end;
Markiert wird end));
Compilermeldung:
Zitat:
[DCC Fehler] WarenContainerGenerisch.pas(92): E2010 Inkompatible Typen: 'TComparison<Waren.TNonFood>' und 'Procedure'
Markus
Hamburflys, Scrubble-Fubble-Puff-Shake, Muffin-Purper-Gurk?
  Mit Zitat antworten Zitat