J'ai un certain nombre dactylographiées tlists que je rencontrais des problèmes pour faire pour trierComment trier une dactylographié Tlist
Normalement, pour un typées TList, j'aurais une fonction telle que:
function SortByJob(Item1: Pointer; Item2: Pointer): Integer;
var
p1, p2: JobPointer;
begin
p1 := JobPointer(Item1);
p2 := JobPointer(Item2);
if p1.job > p2.job then
Result := 1
else
if p1.job = p2.job then
Result := 0
else
Result := -1
end;
ce qui serait appelé par la liste
JobList.Sort(SortByJob)
Cependant, j'ai décidé dans ma demande actuelle que nous voulons bloquer les tlists à certains types de pointeur, donc dans l'exemple ci-dessus, nous aurions la JOBLIST a déclaré que:
JobList: array[0..4] of TList<JobsPointer>;
Maintenant, quand je l'appelle
JobList[0].Sort(SortByJob)
Je reçois une erreur "pas assez de paramètres".
Des idées?
J'ai comparé que si j'utilise la fonction de tri ci-dessus sur un « standard » typées TList il compilera correctement ...
Il convient de noter que TList et TList sont 2 objets totalement indépendants. Ils partagent une même "API" similaire, mais c'est tout. –
@ Krom-Stern, cela a été demandé 2 ans avant celui que vous avez marqué une copie de! –
@DanKelly: Vous avez raison, mais je pensais qu'il est préférable de relier la question moins populaire à un plus populaire .. – Kromster