Освобождают заданный элемент или элементы из памяти.

CLEAR [ALL | CLASS ClassName | CLASSLIB ClassLibraryName | DEBUG | DLLS
   [cAliasNameList]| EVENTS | ERROR |FIELDS | GETS | MACROS | MEMORY 
   | MENUS | POPUPS | PROGRAM | PROMPT | READ [ALL] | RESOURCES 
   [FileName] | TYPEAHEAD | WINDOWS]

Параметры

ALL

Освобождает в памяти все переменные памяти и массивы, а также определения всех пользовательских строк меню, самих меню и окон. Кроме того, команда CLEAR ALL закрывает все таблицы, включая все связанные с ними файлы индексов, файлы формата и memo-файлы, и выбирает рабочую область 1. CLEAR ALL также удаляет из памяти все функции внешних библиотек зарегистрированные DECLARE - DLL.

CLEAR ALL не освобождает системные переменные памяти и не очищает буфер откомпилированных программ. Для очистки этого буфера используйте команду CLEAR PROGRAM.

Если выдать CLEAR ALLвнутри события или метода активного элемента управления или объекта, будет сгенерировано сообщение об ошибке Visual FoxPro. Переменная памяти типа объект не может быть освобождена из памяти, если соответствующий ей элемент управления или объект активен.

CLASS ClassName

Удаляет из памяти определение класса. Если создан экземпляр класса, Visual FoxPro хранит определение класса в памяти и после освобождения этого экземпляра. Чтобы удалить из памяти определение класса после освобождения его экземпляра, используйте команду CLEAR CLASS.

CLASSLIB ClassLibraryName

Удаляет из памяти все определения классов, содержащиеся в данной библиотеке визуальных классов. Если существуют экземпляры классов, принадлежащих этой библиотеке, определения классов не удаляются из памяти. Однако все определения классов, не имеющих экземпляров, удаляются из памяти.

DEBUG

Снимает все точки останова в отладчике и восстанавливает окна Debugger (Call Stack, Trace, Watch, и т. д.) к их позициям по умолчанию.

Если выдать Clear Debug, когда отладчик закрыт, отладчик откроется с окнами Debugger в их позициях по умолчанию.

Работает или в fox или debugger frame mode.

DLLS cAliasNameList

Удаляет из памяти все внешние динамические библиотекия, зарегистрированные с помощью команды DECLARE - DLL. cAliasNameList - это список псевдонимов функций разделенных запятой для удаления из памяти как в следующем примере:

  CopyCode imageCopy Code
CLEAR DLLS  "RegCloseKey","RegOpenKey"

Если вы не использовали никакого псевдонима в объявлении, cAliasNameList такойже как имя функции. Вы не определяете cAliasNameList, все DLL будут удалены из памяти. Вы можете использовать Функция ADLLS( ) чтобы определить, какие DLLs загружены.

Для получения дополнительной информацией о регистрации внешних библиотек функций, смотрите Команда DECLARE - DLL.

ERROR

Востанавливает структуры ошибок Visual FoxPro , как будто никакая ошибка не произошла. Следующие функции востанавливают значения по умолчанию:

Функция AERROR( ) (востанавливается в 0).

Функция ERROR( ) Function (востанавливается в 0).

Функция MESSAGE( ) (востанавливается в пустую строку).

SYS(2018) - Error Message Parameter (reset to the empty string).

Избегайте использования CLEAR ERROR в пределах Команды TRY...CATCH...FINALLY, особенно если вы используете Команду TRY...CATCH...FINALLY для повторного востановления ошибок. Объект Exception, возможно, больше не будет действителен.

EVENTS

Прекращает обработку событий, начатую по команде READ EVENTS. После выдачи команды CLEAR EVENTS is executed, выполнение программы продолжается со строки, непосредственно следующей за строкой с командой READ EVENTS.

FIELDS

Освобождает список, созданный по команде SET FIELDS , и выполняет команду SET FIELDS OFF. CLEAR FIELDS, в отличие от SET FIELDS TO , освобождает все списки полей во всех рабочих областях, а не только в текущей. Кроме того, команда SET FIELDS TO не включает неявное выполнение команды SET FIELDS OFF.

GETS

Освобождает все ждущие элементы управления @ ... GET. Выполнение команды CLEAR также высвобождает все ждущие элементы управления @ ... GET.

NoteNote

GETS включен для обратной совместимости .

MACROS

Освобождает в памяти все макрокоманды клавиатуры, включая все назначения клавиш SET FUNCTION. Макрокоманды можно сохранить в файл макрокоманды или в memo-поле с помощью команды SAVE MACROS и позже восстановить командой RESTORE MACROS. Кроме того, по команде RESTORE MACROS можно восстановить и макрокоманды, используемые по умолчанию.

MEMORY

Освобождает в памяти все глобальные и локальные переменные памяти и массивы. Системные переменные памяти не освобождаются.

MENUS

Освобождает в памяти все определения строки меню.

POPUPS

Освобождает в памяти все определения меню, созданные с помощью команды DEFINE POPUP.

PROGRAM

Очищает буфер откомпилированных программ. Visual FoxPro хранит в буфере самые последние выполнявшиеся программы. В редких случаях Visual FoxPro может не принять изменения, внесенные в файлы программ на диске. CLEAR PROGRAM заставляет Visual FoxPro читать программы с диска, а не из буфера программ. Чаще всего ситуации, когда Visual FoxPro не принимает изменение файлов программ на диске, возникают, если вы модифицируете файл программы с помощью внешнего или резидентного (TSR) редактора. Кроме подобных случаев, командой CLEAR PROGRAM пользоваться не следует.

PROMPT

Освобождает элементы меню, созданные с помощью команды @ ... PROMPT.

READ [ALL]

Включена для обратной совместимости. Используйте вместо нее команду CLEAR EVENTS.

RESOURCES [ FileName]

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

Когда Visual FoxPro отображает точечный рисунок, изображение, курсор, значок, или ресурс шрифта, ресурс кэшируется для оптимизации работы. Если ресурс того с таким же именем используется (например, различный точечный рисунок с тем же именем что и уже кэшируемый), Visual FoxPro не перезагружает ресурс.

Очистка файла ресурса особенно полезна для удаления графическое изображений из памяти и вынуждает Visual FoxPro перезагружать изображение с тем же именем с диска. Например, отчет мог бы отобразить графические изображения из базы данных, которые называются TEMP; однако, потому что они все имеют одинаковое имя, Visual FoxPro не будет перезагружать каждый новый графическое изображение пока не будет очищен из памяти существующий используя команду CLEAR RESOURCES.

Если специфический ресурс все еще находится в использовании Visual FoxPro, то он не может быть очищенным с помощью команды CLEAR RESOURCES.

TYPEAHEAD

Очищает буфер клавиатуры. Командой CLEAR TYPEAHEAD можно запретить вводить данные в поле или отвечать на приглашение до того, как поле или приглашение появится на экране.

WINDOWS

Освобождает в памяти все определения пользовательских окон и удаляет все окна из основного окна Visual FoxPro или из активного пользовательского окна. Команда SAVE WINDOW позволяет сохранить определения окон в файле или memo-поле для использования в будущем.

Выдачи команды CLEAR WINDOWS освобождет все системные переменные памяти, задающие ссылки на формы. Например, следующие команды создают для формы ссылочную переменную памяти, а затем выводят на экран информацию об этой переменной:

  CopyCode imageCopy Code
goMyForm = CREATEOBJECT('FORM')
DISPLAY MEMORY LIKE goMyForm  && Displays GOMYFORM  O  FORM

Команда CLEAR WINDOWS освобождает ссылочную переменную памяти, которая с этого момента будет содержать значение NULL:

  CopyCode imageCopy Code
CLEAR WINDOWS
DISPLAY MEMORY LIKE goMyForm  && Displays GOMYFORM  O  .NULL.

Expand imageЗамечания

Команда CLEAR очищает основное окно Visual FoxPro или текущее пользовательское окно, а также освобождает в памяти все ожидающие элементы управления @ ... GET. Команду CLEAR можно включать в файлы формата.

Expand imageСмотрите также