Что нового

начинать с 0 или 1

RaZum

Знающий
Сообщения
78
Репутация
14
Часто приходит мысль использовать в массивах первую строку для описания данных массива. Что, как мне кажется, было бы неплохо при передаче массива. Ненужно было бы передавать попутно описание. Так сказать "всё включено".

Например тот же IniReadSection использует [0] [0] для передачи общего количества найденых пар "параметр=значение", хотя оставляет пустым элемент [0] [1]. Можно было бы название считываемой секции туда сразу записывать, и тогда был бы, так сказать, комплект. Да и в IniWriteSection можно было бы один массив отправлять, без дополнительного указания секции.

Хотел применить такой способ к ListView, для передачи заголовков, но последующее несовпадение его пунктов, и индексов строк передаваемого массива (особенно для использования в конкатенации), сдерживают желание от такой идеи, хотя идея заманчива.
Идея использования одной из колонок (я использовал последнюю) для подсказок к пунктам ListView, оказалась не так проста.

По поводу функционала работы с ini файлами, то единственным быстрым способом, считать целиком файл и раскидать по Map все секции, параметры и значения, оказался RegExp, хотя видимо я чего-то незнаю. Возможно кто подскажет более лучший вариант.


Примечание:
Объявление массивов без указания размерностей (при заполнении без пропусков), надеюсь останется нормой в AutoIt.
 

Andrey_A

Продвинутый
Сообщения
325
Репутация
68
Не вижу проблемы - каждый решает сам - иметь размерность в 0-й строке или не иметь - задачи все разные...
Что касается IniReadSection и других Ini , то лучше иметь свои функции, т.к. стандартные имеют ограничение.
Если у вас маленькая секция, то нет проблем, но рано или поздно столкнётесь с чтением и записью больших данных...
Когда своей функцией разбираешь секцию/секции, то RegExp самый быстрый вариант и тогда уж сам решаешь 0 или 1
 
Верх