Копия викизеркало

Это зеркало вики с pascal.chat. Правка, история и вход — там.

IDE Window: Call Stack/ru

Deutsch · English · Français · Русский

Важно

Вы должны настроить отладчик и запустить проект для его отладки. Только тогда это окно будет полезно.

Вывод, показанный на этой странице, основан на отладчике GNU (GDB), который в настоящее время является единственным отладчиком, поддерживаемым Lazarus. Его вывод иногда выглядит как C, а не Pascal. Другие отладчики могут показать более Паскалеподобный стиль.

Диалоговое окно

Что такое стек вызовов?

Стек вызовов - это стек вызовов функций. Верхняя строка - это текущая функция, нижняя строка - основная программа.

Столбец Source

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

Столбец Line

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

Note: Нумерация строк - это нумерация на момент последней компиляции проекта с отладочной информацией. Если вы впоследствии вставляли или удаляли строки, нумерация будет неправильной.

Столбец Function

Искаженное имя процедуры или функции. Компилятор преобразует идентификаторы Паскаля в имена, которые могут использовать инструменты GNU (разработанные для кода C). Например:

text
 TAPPLICATION__CREATEFORM(0x81fb738, void, (^TAPPLICATION) 0xb7cd0014)

Это означает:

Маленькие хитрости

Дважды щелкните по строке, чтобы перейти к исходному коду.

Popup menu

Show (Показать)

Переход к позиции исходного кода текущей строки.

Set as current (Задать как текущий)

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

Copy all (Копировать все)

Копирование стека вызовов в буфер обмена.


From the Free Pascal wiki, page "IDE Window: Call Stack/ru", as it stood on 2021-01-24 after a change by Zoltanleo, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Версия 2, последнее изменение: WikiArchive, .