В MT_MTArray есть точка для очистки компонента, а вот в MT_Array - нет. А нужна. И, кстати, почему ArrayRW не имеет метода для удаления элемента массива и очистки массива?
Этот топик читают: Гость
Ответов: 1926
Рейтинг: 172
|
|||
карма: 9 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
3042 писал(а): а вот в MT_Array - нетЗначит, Dilme не нужна была, вот и все ------------ Дoбавленo в 15.50: 3042 писал(а): И, кстати, почему ArrayRW не имеет метода для удаления элемента массива и очистки массива?Очитку массива надо делать в самом массиве, а не в компоненте доступа |
|||
карма: 22 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
nesco писал(а): Очитку массива надо делать в самом массиве, а не в компоненте доступаС очисткой, хрен с ней, а вот удалить элемент как Например вот отсюда code_15464.txt |
|||
карма: 10 |
| ||
файлы: 1 | code_15464.txt [689B] [523] |
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Assasin писал(а): а вот удалить элемент какОчистку и удаление элементов должен делать компонент массива. Его и надо оснащать такой возможностью, как, например, это реализовано в IndexManager-e |
|||
карма: 22 |
|
Ответов: 1926
Рейтинг: 172
|
|||
Неправильно это. Тогда либо каждый массив должен уметь добавлять/заменять, либо отдельный компонент для всех действий. Лучше второе. Ну нет у многих массивов очистки! Что делать?
|
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
историческое наследие - интерфейс общения с массивами предусматривает только 4 метода: add, get, set и count.
|
|||
карма: 27 |
|
Ответов: 1926
Рейтинг: 172
|
|||
А в старых версиях был компонент, название уже не помню, но он умел и удалять...
Так почему бы сейчас не добавить метод, ведь на совместимость это не должно повлиять. |
|||
карма: 9 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Я тоже не откажусь
|
|||
карма: 10 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 7 раз(а), последний 2025-01-08 05:40:04 |
|||
карма: 0 |
|
Ответов: 1926
Рейтинг: 172
|
|||
Это я выше.
|
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
3042, элемент MT_Array не является массивом. Он является конвертором МТ потока в массив.
3042 писал(а): ведь на совместимость это не должно повлиять.в теории - нет. На практике добавление в интерфейс такого метода может привести к RunTime error в коде элементов, у которых используется ручная(устаревшая) инициализация объекта PArray. Ну и наконец увеличение кода во всех схемах, которые не используют данный метод. Ввиду перечисленных причин в данном случае следует делать только так: nesco писал(а): Очистку и удаление элементов должен делать компонент массива. Его и надо оснащать такой возможностьюкак бы не логично это не казалось. |
|||
карма: 27 |
|
Ответов: 1926
Рейтинг: 172
|
|||
Итак, спустя 6 лет снова возник такой же вопрос. К счастью, был найден ответ, хотя и не совсем красивый (красивый - это всё же появление методов в соответствующих компонентах).
Assasin писал(а): а вот удалить элемент как Например вот отсюда code_15464.txtДля цифр вполне можно использовать StrList. Там все методы есть. А для остальных случаев - практически универсальный способ: code_35547.txt В MultiElementEx всегда будут методы удаления элемента, очистки массива и другие необходимые. |
|||
карма: 9 |
| ||
файлы: 1 | code_35547.txt [3KB] [591] |
12