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
 
#3

Re: Generische TObjectlist erzeugt AVs

  Alt 2. Nov 2009, 11:16
Also was mir auch aufgefallen ist... (grml zu langsam.. aber egal )

Delphi-Quellcode:
function TList<T>.IndexOf(const Value: T): Integer;
var
  i: Integer;
begin
  for i := 0 to Count - 1 do
    if FComparer.Compare(FItems[i], Value) = 0 then
      Exit(i);
  Result := -1;
end;
Ich glaube FComparer ist nil. Man kann einen im constructor übergeben...

Ich hab das jetzt so gemacht:

test := TObjectList<TTest>.Create(TComparer<TTest>.Create) Jetzt kommt keine AV mehr, sondern ein abstrakter Fehler

Edit: Klar... Compare ist bei TComparer auch noch abstract -.-


ABER:

Das heißt ja ich muss mir entweder ne Klasse von TComparer ableiten oder ich muss mir sone Compare function schreiben und einem TDelegatedComparer im constructor übergeben.

Der Aufwand macht die generischen Listen ja schon wieder fast unnötig
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