Коллекции
- Элементы коллекций
- Создание коллекций
- Доступ к
элементам коллекций
- Отсортированные коллекции
- Коллекции
строк
- Полиморфные
коллекции
- Коллекции
и управление памятью
Одним из недостатков языка Паскаль (и Турбо Паскаль) является невозможность
создания и использования в программе массивов с переменной размерностью - так
называемых динамических массивов. Этот недостаток особенно ощутимо сказывается в
диалоговых программах, работа которых в существенной своей части определяется
действиями пользователя. Если программист заранее не знает, какие именно
требования к используемым в программе массивам предъявит пользователь, он обычно
резервирует для них максимально возможные объемы памяти или размещает массивы в
куче. И тот и другой способы нельзя считать вполне удовлетворительными: в первом
случае возникают неестественные ограничения на предельно возможные размеры
массивов или выделенная под их размещение память расходуется нерационально, во
втором случае приходится прибегать к дополнительным ухищрениям, чтобы
организовать индексированный доступ к динамической памяти.
Разработчики Turbo Vision решили проблему кардинально, создав механизм
коллекций. Хотя экземпляры объектов можно объединять в массивы, как и «обычные»
переменные Паскаля, Вы вряд ли захотите использовать массивы для их хранения:
коллекции не только снимают проблемы фиксированных границ, но имеют еще и целый
ряд новых возможностей, которыми массивы не обладают.
Изучению коллекций посвящается эта глава.