我需要一个delphi键/值集合,这将允许我按照插入/
添加键/值对的相同顺序迭代集合.
&的TList LT; T>保证顺序,但TDictionary< T1,T2>才不是.
我想我总能定义一个TList< TPair< Key,Value>>但与之合作会更麻烦.
是否有内置的集合类型可以满足我的要求或者包装TList< TPair< Key,Value>>是我最好的选择?或者也许最好有一个TList< Key>和TDictionary< Key,Value>并遍历列表.
如果您的密钥类型是字符串,并且您的值类型是TObject的某个后代,请使用TStringList.将值存储在Objects数组
属性中.
SL.AddObject('foo',obj1);
SL.Add('bar');
i := SL.IndexOf('bar');
SL.Objects[i] := obj2;
如果需要,设置OwnsObjects属性.