Показать сообщение отдельно
Старый 07.08.2008, 09:51   #3  
MikeR is offline
MikeR
MCT
Аватар для MikeR
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
 
1,628 / 627 (24) +++++++
Регистрация: 28.11.2005
Адрес: просто землянин
Стот отметить, что Map в Axapt-e реализован как две сущности. Одна это класс коллекции, а другая это сущность в АОТ. Одна служит для обработки объектов в оперативной памяти, а вторая для удобства заполнения сущностей с одинаковым набором полей как то Поставщики-Клиенты.
Класс - это некая структура (базовый кирпичик) для постоения модификаций.
Если сравнивать первый Map и class, то здесь есть особенности того, что в мапе присуствует ключ и его можно использовать как некий упорядочный список. Он удобен для кэширования информации.
Множественные ключи в нем могут прикрепляться к одному и тому же значению, но один ключ может прикрепляться только к одному значению за раз. Добавление пары ключа и значения в место, где ключ уже привязан к значению изменит связь так, что ключ будет привязан к новому значению.
X++:
Map map = new Map(Types::String, Types::Enum);
Word wordType;
;
map.insert("Car", Word::Noun);
map.insert("Bike", Word::Noun);
map.insert("Walk", Word::Verb);
map.insert("Nice", Word::Adjective);

print map.elements(); //4;

wordType = map.lookup("Car");
print strfmt("Car is a %1", wordType); //Car is a Noun
pause;