Ассоциативный массив

G

galatyn

#2
Никто не знает как сделать ассоциативный массив ?
Проще всего по моему сделать ассоциативный массив использую билиотеку контейнеров adot (RBS AntiDOT). Скачать ее можно с сайта разработчиков http://www.redbeesoft.com
Выглядеть с ней это будет где то так:
uses
adot;
var
n : TTDouble;
s : TTString;
begin
n := TTDouble.create(TCMultimap, [TTString]);
s := n.Fields[1] as TTString;

// добавим какие то данные (две пары ключ-значения)
s[n.Add(1.618)] := 'Golden Ration';
s[n.Add(3.1415)] := 'Pi';

// выведем на экран (для консольного приложения)
n.Println;
n.free;
end;

Вместо TTDouble/TTString можно использовать любые другие типы, adot поддерживает все типы Delphi и соотв-но вы всегда работаете именно с тем типом, который нужен, а не variant как у большинства аналогов.