Cтраница 1
Инспектор отладки загружает большой объем информации, так что прокрутка его списка на некоторых системах может быть медленной. [1]
Окно инспектора отладки содержит подробную информацию об указанном объекте. Если объектом является простой тип данных, то в окно инспектора отладки будет выведено текущее значение ( в десятичном и шестнадцатерич-ном форматах для числовых типов), а в строку состояния в нижней части окна - тип переменной. Например, если вы проверяете целую переменную, в окно будет выведено ее значение, а строка состояния покажет тип - int. В верхней части инспектора отладки находится комбинированный список, который изначально содержит описание инспектируемого объекта. [2]
Вкладка Methods инспектора отладки отображает методы класса. Как и для членов-данных, список методов имеет иерархическую структуру. Первыми показаны собственные методы класса, после которых следуют методы классов-предков. [3]
Вкладка Properties инспектора отладки показывает свойства инспектируемого класса. Если вы инспектируете класс, унаследованный из VCL, то проверка его свойств в инспекторе отладки идет очень медленно. В большинстве случаев вы можете выполнить ту же задачу другим способом, просмотрев член класса, связанный с конкретным свойством, во вкладке Data. Проверка членов-данных происходит намного быстрее, чем проверка свойств. [4]
Контекстное меню инспектора отладки имеет несколько пунктов, которые позволяют работать с отдельными переменными. Например, вместо того, чтобы открывать новое окно инспектора отладки для каждого объекта, вы можете выбрать в контекстном меню пункт Descend, чтобы заменить текущий объект в окне инспектора отладки объектом, на который указывает курсор. Этот способ имеет дополнительное преимущество: IDE будет сохранять хронологический список объектов, которые вы инспектируете. Чтобы вернуться к проверявшемуся ранее объекту, достаточно выбрать его из комбинированного списка, расположенного в верхней части окна инспектора отладки. [5]
Вы можете пользоваться инспектором отладки только в том случае, когда выполнение программы приостановлено под управлением отладчика. [6]
Вкладки Methods и Properties инспектора отладки доступны только в том случае, когда вы инспектируете класс. [7]
Чтобы лучше понять работу инспектора отладки, выполните следующее. [8]
Пункт Show Inherited в контекстном меню инспектора отладки является переключателем, который определяет объем информации, выводимой инспектором отладки. Когда опция Show Inherited включена, инспектор отладки показывает все члены-данные, методы и свойства инспектируемого класса, а также члены-данные, методы и свойства всех предков данного класса. Когда опция Show Inherited выключена, показываются члены-данные, методы и свойства только самого класса. Выключение этой опции может значительно ускорить работу инспектора отладки, поскольку ему не придется выводить такой большой объем информации. [9]
В отличие от списка объектов наблюдения и инспектора отладки, диалоговое окно Evaluate / Modify не обновляется автоматически при пошаговом выполнении программы. Если ваш код изменяет значение переменной, содержащейся в окне Evaluate / Modify, то нужно щелкнуть кнопку Evaluate, чтобы увидеть результат. Обычно при работе с этим диалоговым окном вы вычисляете значение переменной или выражения и сразу закрываете окно. [10]
Диалоговое окно Evaluate / Modify работает аналогично списку объектов наблюдения или инспектору отладки. Если вы щелкнете на переменной в исходном тексте и выберете пункт Evaluate / Modify в контекстном меню редактора кода, то будет выведено значение этой переменной. Если вам нужна переменная, которая в настоящий момент не показана в исходном тексте, то можете выбрать в главном меню пункт Run Evaluate / Modify, а затем набрать имя переменной, значение которой нужно вычислить. [11]
Когда вы выбираете пункт Inspect в контекстном меню или используете эквивалентное сочетание клавиш Alt F5, инспектор отладки автоматически покажет состояние объекта под курсором. Если вы выбрали Run Inspect в главном меню, то сначала выводится диалоговое окно, где вы должны ввести имя объекта, состояние которого хотите проверить. [12]
Пункт Show Inherited в контекстном меню инспектора отладки является переключателем, который определяет объем информации, выводимой инспектором отладки. Когда опция Show Inherited включена, инспектор отладки показывает все члены-данные, методы и свойства инспектируемого класса, а также члены-данные, методы и свойства всех предков данного класса. Когда опция Show Inherited выключена, показываются члены-данные, методы и свойства только самого класса. Выключение этой опции может значительно ускорить работу инспектора отладки, поскольку ему не придется выводить такой большой объем информации. [13]
Если, например, в окне параметров отладчика установлена опция Inspector stay on top ( см. рис. 3.12), то окно Инспектора отладки будет видно всегда. [14]
Для получения более подробной информации о конкретном члене, дважды щелкните в столбце значений на строке, в которой находится интересующий вас член. Откроется второе окно инспектора отладки, где будет выведена более детальная информация о выбранном элементе. На рабочем столе может одновременно находиться несколько открытых окон инспектора отладки. [15]