Pascal 7 & Objects



TSortedCollection модуль Objects


-----------------------------------------------------------------

TObject TCollection +------+ +----------------------------------------+ +------| | Count Items | |-Init-| | Delta Limit | |-Done-| +----------------------------------------| | Free | | Init ForEach | +------+ |-Load------------- Free | | Done FreeAll | | At FreeItem | | AtDelete GetItem | | AtFree -IndexOf------------| | AtInsert -Insert-------------| | AtPut LastThat | | Delete Pack | | DeleteAll PutItem | | Error SetLimit | | FirstThat -Store--------------| +----------------------------------------+

TSortedCollection +-----------------+ | Duplicates | +-----------------| | Load | | Compare | | IndexOf | | KeyOf | | Search | | Store | +-----------------+

TSortedCollection - это специализированный производный от TCollection тип, реализующий наборы, отсортированные по ключу. Сортировка реализуется виртуальным методом Compare, который вы переопределяете для определения собственного порядка сортировки элементов. При добавлении новых элементов они автоматически вклю- чаются в порядке, заданном методом Compare. Элементы можно нахо- дить с помощью метода двоичного поиска Search. Если Compare тре- буется дополнительная информация, виртуальный метод KeyOf, возв- ращающий указатель на Compare, также можно переопределить.

TSortedCollection реализует отсортированные наборы с дубли- руемыми ключами и без них. Поле Duplicates управляет разрешением дублирования. По умолчанию оно равно False. Это указывает, что дублирующиеся ключи не разрешаются, но после создания отсортиро- ванного набора вы можете установить Duplicates в True, что позво- лит использовать в наборе элементы с дублирующимися ключами.




Содержание  Назад  Вперед