16-битный Delphi 1 (да, он старый, но работает хорошо)
Пример кода:
procedure TForm1.Button1Click(Sender: TObject);
var
SL: TStringList;
begin
SL := TStringList.Create;
SL.Sorted := True;
SL.Duplicates := dupIgnore;
SL.AddObject('A', TObject(100));
SL.AddObject('A', TObject(999));
ShowMessage(IntToStr(LongInt(SL.Objects[0]))); {A}
SL.Free;
end;
Я использую поле Object для хранения longint (хак, да, но он получает Работа выполнена). В любом случае, в строке A выше я ожидал, что ShowMessage покажет 100, вместо этого он покажет 999 (даже если установлен dupIgnore). Я что-то упустил? Или это должно работать следующим образом (я ожидал, что список строк будет игнорировать 999)?