Показать сообщение отдельно
  #21  
Старый 03.12.2012, 07:02
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от morebeauty
Я помню в бейсике объявить переменную/массив можно было в любой части программы. Понимаю, паскаль не бейсик, но, возможно, есть какие-либо ухищрения.

Есть, но ты там ничего по скорости не выиграешь. Я тебе дал код, который сразу один раз выделяет нужное кол-во памяти при вызове конструктора по переданному ему значению.

В принципе, можно использовать связанный список, храня указатели и на голову списка, и на хвост (для быстрого добавления новых ячеек). Однако все-равно распределение памяти под конкретную ячейку останется. Зато получишь долгий проход по списку для поиска конкретной ячейки.

А вообще, если пишешь нечто бугалтерское, то сам бог велел разобраться с базами данных (кстати, саму БД можно "выкинуть" на другую машину-сервер). Помнится, когда компы в массе были такие, что с трудом тянули NT, программа на Delphi на клиентской Win95/98 летала, хотя саму Delphi на такой комп ставить было бессмысленно - просто не хватило бы ресурсов для нормальной работы.

А так, по мне ты фигней занимаешься. Сначала напиши весь код, потом просто профайлером пройдешься и посмотришь где реально узкие места, вот там и будешь оптимизировать.
Ответить с цитированием