это экземпляр класса, у нее всякие свойства, методы.
Проблема в том, что количество используемых строк и колонок заранее неизвестно, они добавляются автоматически при доступе к ячейке по координатам или по имени. Технически, может быть десятки тысяч колонок и строк, но ячейки в них не используются, но экземпляры создаются и инициализируются. Если не создавать автоматически экземпляры ячеек, то придется либо вручную проверять и создавать, либо делать какую-то надстройку, которая имитирует поведение несуществующей ячейки при чтении и создает ячейку при записи.
Вопрос, как это сделать, чтобы в использовании это было так же просто и удобно, как массив экземпляров классов?
1. При обращении к ячейке создавать и возвращать interface или object редактора ячейки (с коротким временем жизни). Для записи это хорошо, а для чтения дикий оверхед.
2. Сделать итератор или курсор, как в датасетах. Не особо удобно, зато нет оверхеда.
3. Может быть есть какой-то новый или хорошо забытый старый приём на этот случай?
Стикер
Например, в файле xlsx установлены свойства диапазона колонок 30..16384. Но ячейки в этих колонках не используются, они пустые. Получается, в каждой строке 0.001% используемых ячеек, остальные просто жрут память и такты =)
Обсуждают сегодня