我有自定义排序TStringList
...
Items.CustomSort(@CompareWords);
...使用此比较功能:
function CompareWords(List: TStringList; Index1, Index2: Integer): Integer;
begin
Result := StrIComp(PWideChar(List[Index1]), PWideChar(List[Index2]));
end;
但在注意到我的代码存在一些问题后,我希望列表按照StrIComp
的顺序排序,我创建了这个小小的支票...
for i := 1 to Items.Count - 1 do
begin
Assert(StrIComp(PWideChar(Items[i-1]), PWideChar(Items[i])) <= 0);
end;
......它失败了。
为什么列表没有正确排序?
答案 0 :(得分:3)
你可能有Items.Sorted = True。