Переход от C ++ к AS3: что такое фундаментальные классы структур данных AS3? - PullRequest
5 голосов
/ 24 июля 2011

Мы портируем игру с C ++ на web; В игре широко используются STL.

Можете ли вы предоставить краткую диаграмму сравнения (и, если возможно, немного примеров кода для основных операций, таких как вставка / удаление / поиск и (где применимо) equal_range / binary_search) для классов, которые эквивалентны следующим контейнерам STL:

std::vector
std::set
std::map
std::list
stdext::hash_map

Большое спасибо за ваше время!

UPD: вау, похоже у нас нет всего, что нам нужно здесь: (

Может ли кто-нибудь указать на какую-нибудь отраслевую стандартную библиотеку алгоритмов для программ AS3 (например, boost в C ++)? Я не могу поверить, что люди могут писать нетривиальные программы без сбалансированных бинарных деревьев поиска (std :: set std :: map)!

Ответы [ 2 ]

7 голосов
/ 24 июля 2011

Выбор структур данных значительно более ограничен в as3.У вас есть:

  • Array или Vector.<*>, который хранит список значений и может быть добавлен после построения
  • Dictionary (hash_map), в котором хранятся пары ключ / значение

карты и наборы на самом деле не поддерживаются, поскольку нет способа переопределить равенство объектов.Что касается бинарного поиска, большинство поисковых операций используют функцию предиката для переопределения равенства для этого поиска.

Редактировать: Что касается общих библиотек алгоритмов и утилит, я бы посмотрелв as3commons

1 голос
/ 24 июля 2011

Может быть, эта библиотека будет соответствовать вашим потребностям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...