Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Руководство пользователя 14 страница



│ │

│ │

│ │

└───────────┘

 

Ctrl+P Print (Печать иерархии объектов)

 

┌───────────┐

│ │

│ │

│ │

└───────────┘

 

Ctrl+W Replace (Замена текущего окна просмотра)

 

┌───────────┐

│ │

│ │

│ │

└───────────┘

 

Ctr+W Open (Открытие нового окна просмотра)

 

Рис. 5.4 Командные кнопки оперативной полосы ObjectBrowser.

 

Примечание: От того, с каким именно окном

ObjectBrowser вы работаете, зависит, какие в точности кноп-

ки выводятся в оперативной полосе.


 

B.Pascal 7 & Objects /UG - 132 -

 

 

Последние две кнопки показывают в действительности два раз-

личных представления одной кнопки. При первом использовании

ObjectBrowser вы увидите командную кнопку одиночного окна. Щелк-

ните на ней "мышью", и вы увидите кнопку множественных окон.

 

Когда вы выбираете кнопку одиночного окна и начинаете прос-

мотр, новое окно просмотра при каждом действии просмотра заменяет

текущее окно просмотра. При выборе кнопки множественных окон окна

остаются на экране, пока вы их не закроете.

 

Вы можете быстро изменить действие этих кнопок на обратное:

удерживая нажатой кнопку Shift, выберите следующее действие прос-

мотра. Например, если выводится кнопка множественных окон, то при

нажатии клавиши Shift следующее окно просмотра будет замещать те-

кущее.


 

B.Pascal 7 & Objects /UG - 133 -

 

Просмотр объектов

─────────────────────────────────────────────────────────────────

 

ObjectBrowser позволяет вам увидеть "общий план" иерархии

объектов, а также мелкие детали. Чтобы активизировать

ObjectBrowser и графически показать на экране объекты, выберите

команду Search│Object. ObjectBrowser рисует ваш объект и показы-

вает в виде горизонтального дерева его соотношения "предок-пото-

мок". Красные линии в иерархии помогают вам ясно увидеть непос-

редственные отношения "предок-потомок" текущего объекта.

 

╔═══════════════════════════════════════════════════════════════╗



║ = │? │ ╬ │ ╧ │ * │ █ │█████████Browsing Objects██████████│v│^║

║───┴───┴───┴───┴───┴───┴───────────────────────────────────┴─┴─║

║ │ ^

║ ┌┤▒TWindowsObject▒├┬┤▒TWindow▒├─┴─┬┬┬┤▒TMDIClient▒│█

║ │ │ │││ ▒

║ │ │ ││└┤▒TListBox▒├┤▒▒

║ │ │ ││ ▒

║ │ │ │└─┤▒TGroupBox▒├─▒

║ │ │ │ ▒

║ │ │ └──┤▒TButton▒├┤▒T▒

║│▒TObject▒▒├┼┬┬┐ │ ▒

║ ││││ └┤▒TDialog▒├┤▒TDglWindow▒│ ▒

║ ││││ ▒

║ │││└┤▒TStream▒├┬┤▒TEmsStream▒│ ▒

║ │││ │ ▒

║ │││ └┤▒TDosStream▒├─┤▒TBufSteram▒│ ▒

║ │││ ▒

║ ││└─┤▒TScroller▒│ ▒

║ ││ ▒

║ │└──┤▒TCollection▒├┤▒TSortedCollection▒├┬┤▒TStringC▒

║ │ │ ▒

║ │ └┤▒TStrColl▒

║ └───┤█Application█├┤▒THelloApp▒│ ▒

║ v

╚<▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒>▒

 

Рис. 5.5 Просмотр иерархии объектов прикладной программы.

 


 

B.Pascal 7 & Objects /UG - 134 -

 

 

Чтобы увидеть более подробную информацию о конкретном объек-

те, дважды щелкните на нем кнопкой "мыши". Если вы не используете

"мышь", выберите объект с помощью клавиш управления курсором

(стрелок) и нажмите Enter. ObjectBrowser перечисляет используемые

в объекте символы (процедуры, функции, переменные и т.д.)

 

╔═══════════════════════════════════════════════════════════════╗

║ = │? │ ╬ │ ╧ │ * │ █ │█████████Browsing TApplication█████│v│^║

║───┴───┴───┴───┴───┴───┴───────────────────────────────────┴─┴─║

║ ║

║ Browsing TApplication ║

║ ┌───────────────────────────────────┐ ║

║ │v▒▒▒▒▒▒Status:Integer▒▒▒▒▒▒▒▒▒▒▒▒▒^│ ║

║ │v Name:PChar ▒│ ║

║ │v MainWindow:PWindowsObject ▒│ ║

║ ┌───────┐ │v HAccTable:Word ▒│ ┌──────────┐ ║

║ │TObject├─┤v KBHandleWnd:PWindowsObject ▒├─┤THelloAppl│ ║

║ └───────┘ │p Init[PChar] ▒│ └──────────┘ ║

║ │p √ Done ▒│ ║

║ │f √ IdleAction:Boolean ▒│ ║

║ │p √ InitApplication v│ ║

║ │<█▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒>▒│ ║

║ └───────────────────────────────────┘ ║

║ ║

║ Filters: √ F P V │ p v ║

║ X │ │ │ ║ │ │ ║

║ ║

╚═══════════════════════════════════════════════════════════════╝

 

Рис. 5.6 Просмотр детальной информации по объекту.

 

Слева от каждого идентификатора объекта выводятся одна или

более букв. Символ описывает вид идентификатора.

 

Буквенные символы в ObjectBrowser

Таблица 5.2

┌────────────┬────────────────────────────┐

│ Буква │ Функция │

├────────────┼────────────────────────────┤

│ F │ Функция │

│ P │ Процедура │

│ T │ Тип │

│ V │ Переменная │

│ C │ Константа │

│ L │ Метка │

│ I │ Наследование от предка │

│ p │ Приватный идентификатор │

│ v │ Виртуальный идентификатор │

└────────────┴────────────────────────────┘

 


 

B.Pascal 7 & Objects /UG - 135 -

 

Фильтры

 

Те же символы, что идентифицируют вид идентификатора, выво-

дятся в матрице фильтров Filters в нижней части окна

ObjectBrowser. Вы можете использовать фильтры для выбора типа

идентификаторов, список которых хотите видеть.

 

Матрица фильтров содержит столбец для каждой буквы; буква

может выводиться в верхней или нижней строке.

 

Примечание: Для выбора типа идентификаторов вы можете

также использовать окно Browser Options. Выберите команду

Options│Browser и идентификаторы, которые вы хотите вывести

в списке.

 

Чтобы просмотреть все экземпляры символа конкретного типа,

щелкните "мышью" на верхней ячейке столбца буквы. Например, чтобы

просмотреть все переменные в текущем выбранном объекте, щелкните

на верхней ячейке столбца V. Выводятся все переменные, используе-

мые в объекте.

 

Чтобы скрыть все экземпляры конкретного объекта или иденти-

фикатора, щелкните "мышью" на нижней ячейке столбца буквы. Напри-

мер, чтобы просмотреть только функции или процедуры объекта, вам

нужно сделать скрытыми все переменные. Щелкните "мышью" на нижней

ячейке в столбце V, и на верхних ячейках в столбцах F и P.

 

Примечание: Вы можете изменить несколько установок

фильтра сразу. Буксируйте "мышь" по ячейкам, которые вы хо-

тите выбрать в матрице Filters.

 

В некоторых случаях для идентификатора выводится более одной

буквы. Второй буквенный символ выводится непосредственно после

первой буквы, обозначающей тип идентификатора и служит для даль-

нейшего описания идентификатора:

 

* I обозначает наследуемый идентификатор;

* p обозначает приватный идентификатор;

* v обозначает виртуальный идентификатор.

 

Просмотр описаний перечисленных идентификаторов

 

Для просмотра описания конкретного содержащегося в списке

идентификатора используйте следующие методы:

 

* дважды щелкните на идентификаторе кнопкой "мыши";

* выберите идентификатор и щелкните "мышью" на кнопке Browse

или нажмите Ctrl+B;

* выберите идентификатор и нажмите клавишу Enter.

 

При просмотре в режиме одного окна (кнопка Window оператив-


 

B.Pascal 7 & Objects /UG - 136 -

 

ной полосы выводит на экран только одно окно), если вы хотите

вернуться на уровень выше, щелкните "мышью" на кнопке вывода пре-

дыдущего окна просмотра или нажмите клавиши Ctrl+V.

 

Хотя очень легко использовать оперативную полосу для выбора

одно- и многооконного режима, тоже самое вы можете делать с по-

мощью меню и диалогового окна. Чтобы новое окно просмотра заменя-

ло текущее, сделайте следующее:

 

1. Выберите команду Options│Browser.

 

2. Установите параметр Replace Current sub-browsing.

 

3. Выберите командную кнопку OK.

 

Чтобы новое окно просмотра при выборе перечисленного в спис-

ке идентификатора оставалось на экране, сделайте следующее:

 

1. Выберите команду Options│Browser.

 

2. Установите параметр New Browser sub-browsing.

 

3. Выберите командную кнопку OK.

 


 

B.Pascal 7 & Objects /UG - 137 -

 

Просмотр глобальных идентификаторов

─────────────────────────────────────────────────────────────────

 

С помощью ObjectBrowser вы можете просматривать все модули,

которые использует программа. Чтобы открыть окно со списком всех

используемых в программе модулей и именем самой прикладной прог-

раммы выберите команду Search│Units.

 

Выберите модуль, о котором вам нужно получить более подроб-

ную информацию. Как и в случае глобальных идентификаторов, вы мо-

жете выполнять поиск в списке модулей, набирая первые несколько

букв имени модуля в блоке ввода Search в нижней части окна.

 

После выбора модуля вы можете перечислить вывести список

всех идентификаторов в интерфейсной части модуля.

 

* В выводимом списке модулей дважды щелкните "мышью" на име-

ни модуля, выделите имя модуля и выберите Inspect или вы-

делите имя и нажмите клавишу Enter.

 

В этом списке вы можете выделить идентификатор и сделать

следующее:

 

- Чтобы увидеть описание идентификатора, дважды щелкните

на идентификаторе кнопкой "мыши", выделите его и выбери-

те командную кнопку Inspect (Проверка), или выделите его

и нажмите клавишу Enter.

 

- Чтобы перейти на строку исходного кода, где описывается

идентификатор, выберите командную кнопку Go To Source

Code.

 

- Чтобы вывести список всех ссылок на идентификаторы, вы-

берите командную кнопку Reference. Если вы выберите одну

из этих ссылок, ObjectBrowser позиционирует ваш курсор в

исходном коде.

 

* Чтобы перейти на описание идентификатора в исходном коде,

выберите командную кнопку Go to Source Code.

 

* Чтобы перечислить все ссылки на идентификатор в вашем при-

ложении, выберите командную кнопку Reference.

 

 

Просмотр идентификаторов в исходном коде

─────────────────────────────────────────────────────────────────

 

Вы можете просматривать идентификаторы в своем исходном ко-

де, не выводя сначала иерархию объектов или список идентификато-

ров. Выберите один из следующих методов:

 

* Подсветите идентификатор в своем коде и выберите команду

Search│Symbol.


 

B.Pascal 7 & Objects /UG - 138 -

 

 

* Если ваша "мышь" настроена для просмотра, удерживая нажа-

той клавишу Ctrl, щелкните на идентификаторе в вашем коде

правой кнопкой "мыши".

 

* Для вывода локального меню окна редактирования нажмите

клавиши Alt+F10 или щелкните правой кнопки "мыши" и выбе-

рите команду Browse Symbol at Cursor.

 

Если выделенный вами идентификатор представляет собой струк-

турный тип, то ObjectBrowser выводит для этого типа информацию

обо всех идентификаторов в его области действия. Любой из них вы

можете выбрать для дальнейшей проверки. Например, если вы выбери-

те объектный тип, то увидите список всех идентификаторов в облас-

ти действия этого объекта.

 

 

Выполнение в IDE других программ

─────────────────────────────────────────────────────────────────

 

В IDE вы можете запускать по вашему выбору четыре других

программы: отладчик Turbo Debugger, пакет разработчика ресурсов

Resource Workshop, утилиту WinSight и профилировщик Turbo

Profiler. Чтобы запустить любую из этих программ, выберите коман-

ду Tools для открытия меню Tools и затем выберите инструменталь-

ное средство, которое вы хотите запустить. Чтобы изменить маршрут

или передать этим программам аргументы, используйте диалоговое

окно Tools (Options│Tools).

 

В отличие от IDE для DOS вы не можете добавить в меню Tools

другие утилиты. Так как IDE для Windows представляет собой прик-

ладную программу Windows, на самом деле это не дает преимуществ.

Вы всегда можете переключиться на другую программу, используя

средства переключения задач Windows.


 

B.Pascal 7 & Objects /UG - 139 -

 

Настройка конфигурации IDE

─────────────────────────────────────────────────────────────────

 

Вы можете настраивать конфигурацию IDE, сохранять свою опе-

рационную среду и управлять проектами аналогично тому, как это

делается в IDE для DOS (см. выше). При сохранении операционной

среды и управлении проектами между IDE для DOS и IDE для Windows

существуют следующие различия:

 

* IDE для Windows всегда сохраняет файл оперативной области

в том же каталоге, что и текущий файл конфигурации. Вы не

можете переопределить это, как в IDE для DOS.

 

* Чтобы очистить основной файл, выберите в IDE для Windows

команду Compile│Clear Primary File. Вы можете использовать

этот метод также и в IDE для DOS, но у вас есть возмож-

ность выбора в диалоговом окне Primary File командной

кнопки Clear Primary File.

 


 

B.Pascal 7 & Objects /UG - 140 -

 

────────────────────────────────────────────────────────────────────────────

Глава 6. Отладка в интегрированной среде

─────────────────────────────────────────────────────────────────

 

Интегрированная интерактивная среда разработки программ

Borland Pascal (IDE) включает в себя ряд средств, облегчающих

разработку программ: автоматическое управление проектами, средств

обеспечения модульной структуры программы, быструю компиляцию и

простые в использовании оверлеи. Но несмотря на все это ваша

программа все равно может содержать ошибки, что не позволит ей

корректно работать.

 

IDE для DOS Borland Pascal предоставляет вам инструменталь-

ные средства для отладки программ, то есть поиска и исправления

ошибок. В этой главе описываются инструментальные средства и про-

цедуры отладки программы в интегрированной среде, включая следую-

щие темы:

 

* обзор ошибок и методов отладки;

 

* управление выполнением программы;

 

* проверка значений;

 

* остановки выполнения программы.

 

Данная глава посвящена встроенному отладчику IDE для DOS.

Все описанные процедуры применимы также к Турбо отладчику (Turbo

Debugger) и Турбо отладчику для Windows, хотя имена меню и нажи-

маемые клавиши в них могут отличаться.

 

 

Что такое отладка?

─────────────────────────────────────────────────────────────────

 

Отладка - это процесс поиска и исправления ошибок в програм-

ме, препятствующих корректной работе программы. Перед тем как уг-

лубиться в специфические средства IDE Borland Pascal, которые по-

могают при отладке, дадим краткое описание видов ошибок, которые

вы можете наблюдать, и различного рода операций, которые вы будет

использовать для их поиска.

 

Какие существуют виды ошибок?

─────────────────────────────────────────────────────────────────

 

Существует три основных типа ошибок: ошибки этапа компиля-

ции, ошибки этапа выполнения и логические ошибки. Если вы уже хо-

рошо знакомы с этими понятиями, то можете пропустить следующий

раздел до методов отладки.

 

Ошибки этапа компиляции

 

Ошибки этапа компиляции или синтаксические ошибки происхо-

дят, когда ваш исходный код нарушает правила синтаксиса Паскаля.


 

B.Pascal 7 & Objects /UG - 141 -

 

Borland Pascal на может скомпилировать вашу программу, пока она

не будет содержать допустимые операторы Паскаля. Когда компилятор

встречает оператор, который он не может распознать, соответствую-

щий файл выводится в окне редактирования, курсор позиционируется

на то место, которое не понял компилятор, и выводится сообщение

об ошибке.

 

Компилятор, работающий в режиме командной строки, также дает

вам некоторую информацию. Когда он находит синтаксическую ошибку,

то выводит содержащую ошибку строку с номером этой строки и сооб-

щением об ошибке.

 

Наиболее общей причиной ошибок этапа компиляции являются

ошибки набора (опечатки), пропущенные точки с запятой, ссылки на

неописанные переменные, передача неверного числа (или типа) пара-

метров процедуры или функции и присваивание переменной значений

неверного типа.

 

После исправления ошибки вы можете выполнить компиляцию за-

ново. После устранения в программе всех синтаксических ошибок и

ее успешной компиляции программа будет готова к выполнению и по-

иску ошибок этапа выполнения и логических ошибок.

 

Ошибки этапа выполнения

 

Ошибки этапа выполнения или семантические ошибки происходят,

когда вы компилируете полную программу, которая при ее выполнении

делает что-то недопустимое. То есть, программа содержит допусти-

мые операторы Паскаля, но при выполнении операторов что-то проис-

ходит неверно. Например, ваша программа может пытаться открыть

для ввода несуществующий файл или выполнить деление на ноль.


Дата добавления: 2015-09-30; просмотров: 25 | Нарушение авторских прав







mybiblioteka.su - 2015-2024 год. (0.052 сек.)







<== предыдущая лекция | следующая лекция ==>