Turbo Basic 1.1. Руководство пользователя


Turbo Basic 1.1. Руководство пользователя - стр. 105


  пользовать для других целей.
           Например:
           'разберитесь сколько записей есть в файле
           'образмерьте динамические массивы и зпгрузите их
           OPEN "PARTS.DTA" AS #1 LEN=56
           COUNT=LOF(1)/56
           DIM PARTS(COUNT),DESC$(COUNT),GUAN(COUNT),COST(COUNT)
           GOSUB LOADARRAYS
           GOSUB USEARRAYS
           ERASE PARTS,DESC$,GUAN,GOST
 Чтобы воспользоваться преимуществом динамических массивов Т.Б.,вам
  необходимо только принять решение о вызове каждого массива в программе:как
  статического  или как динамического.Является его размер постоянным в соот-
  ветствии с конструкцией программы ,или он зависит  от  какого-то  парамет-
  ра,который  неизвестен до периода прогона?Например,массив BIRTHS из приво-
  дившегося ранее примера лучше создавать как статическую структуру-он всег-
  да длжен быть длинной 100 элементов.
  Ловушка динамических массивов состоит в том,что  вы  можете  попы-
  таться  образмертвать  большой массив и потерпеть неудачу из-за недостатка
  свободной памяти в период прогона  для  выполнения  ваших  требований.Если
  программа  содержит  только  статические массивы и уже заявлено достаточно
  памяти для начала работы,прекращение прогона  быть  не  может;эти  массивы
  создаются еще до начала прогона программы.
  Программа  ,использующая  динамические массивы,должна быть поэтому
  как-то осведомлена о том,что в период прогона может оказаться недостаточно
  памяти для заявления желаемых массивов.Перед попыткой образмерить  динами-
  ческий  массив  используйте функцию FRE(-1),чтобы посмоьреть достаточно ли
  места для него .
          
        Заявление статических и динамических массивов
         
  Типом массивов по умолчанию,содержащихся  в  программе,  управляют
  метаоператоры $DYNAMIC и $STATIC.Обычно программа содержить только  один
  из этих операторов.По умолчанию компилятор полагает атрибут $STSTIC.
  Класс хранения массива также может быть установлен с использовани-



Начало  Назад  Вперед