| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
TDeb 3.0 #2-3 = 30 =
Глава 10. Объектно-ориентированная отладка для Паскаля и C++
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Чтобы удовлетворить потребности развития методов объект-
но-ориентированного программирования, принципы которого реализо-
ваны в последних версиях таких языков высокого уровня, как Турбо
C++ и Турбо Паскаль, Турбо отладчик был также модифицирован для
поддержки объектно-ориентированного программирования. Кроме тех
расширений, которые позволяют вам выполнять трассировку методов
объектов или функций-элементов классов в диалоговом окне Evaluate
/Modify (Вычисление/Модификация) и окне Watch (Просмотр), Турбо
отладчик версии 3.0 оснащен специальным набором окон и локальных
меню, созданных специально для работы с объектными типами и клас-
сами.
Отладка объектно-ориентированных программ Турбо Паскаля
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Пошаговое выполнение и трассировка вызовов методов
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Во время трассировки (клавиша F7) и пошагового выполнения
(клавиша F8) Турбо отладчик рассматривает методы в точности так,
как если бы они были процедурами или функциями. Клавиша F7 осу-
ществляет трассировку исходного кода метода (если этот код досту-
пен), тогда как F8 рассматривает вызов метода, словно это один
оператор, и "перешагивает" через него.
Турбо отладчик правильно управляет поздним связыванием вир-
туальных методов: он всегда выполняет и выводит на экран коррект-
ный код. В окне стека Турбо отладчика (окно Stack) выводятся на
экран имена методов, перед которыми указывается тип объекта, оп-
ределяющего метод.
TDeb 3.0 #2-3 = 31 =
Окно Hierarchy
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В Турбо отладчике предусмотрено специальное окно Hierarchy
(Иерархия) для проверки иерархии объектов или классов. Вывести
это окно можно по команде меню ViewіHierarchy (ОбзоріИерархия).
Й[*]ННННClass HierarchyНННННННННННННННННННН3ННННН[ ][ ]»
єDevice і АДДДДДДДДPoint є
єGlowGauge і АДДДДДДДДДДRectangle є
єHorzArrow і ГДДДДДДДDevice є
єHorzBar і АДДДДДДДTextWindowє
єLinearGauge іRange є
єPoint і АДДДДДДDevice є
єRange і ГДДДДДДGlowGauge є
єRectangle ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДє
єScreen іParents of Device є
єTextWindow і іДДДДДДДДДДRange є
єVertArrow і АДДДДДДДДДДRectangle є
єVertBar і АДДДДДДДДДДPoint є
є і АДДДДДДДScreen є
ИННННННННННННН<І±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±>Ѕ
Рис. 10.1 Окно Hierarchy
В окне Hierarchy (Иерархия) выводится информация об объект-
ных типах или классах, а не об их экземплярах. В левой области
выводится список в алфавитном порядке всех типов, используемых в
отлаживаемом модуле. В правой области (двух областях, если вы от-
лаживаете программу на C++ с множественным наследованием) показа-
на иерархия всех объектов или классов (с помощью линейной графи-
ки). При этом по левой границе области выводится базовый тип и
показываются порожденные им типы ("потомки"). Кроме того показаны
все "предки" классов с множественным наследованием. При этом ли-
нии показывают отношения между "предками" и "потомками".
Примечание: Для перемещения между двумя областями ис-
пользуйте клавишу Tab.
Области списка типов объектов и классов
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В левой области окна иерархии объектов/классов выводится (в
алфавитном порядке) список всех типов классов или объектов в те-
кущем модуле. Она поддерживает средство инкрементального поиска,
что исключает необходимость перемещать курсор по большим спискам
типов. Когда полоса подсветки находится в левой области, можно
просто начать набирать новое имя искомого типа объекта или клас-
са. При каждом нажатии клавиши Турбо отладчик подсвечивает первый
тип, соответствующий всем нажатым к этому моменту клавишам.
Для того, чтобы открыть окно Inspector (Проверка) для подс-
веченного типа объекта или класса, нажмите клавишу Enter. Окна
TDeb 3.0 #2-3 = 32 =
проверки описаны далее.
Локальное меню области области списка типов объектов и классов
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Для вывода локального меню данной области нажмите клавиши
Alt-F10. Вы можете также использовать сокращения (оперативные
клавиши), если это разрешено с помощью утилиты TDINST. Данное ло-
кальное меню содержит два элемента: Inspect и Tree.
ЪДДДДДДДДДДДДДДДДДї
Проверка і Inspect і
Дерево і Tree і
АДДДДДДДДДДДДДДДДДЩ
Команда Inspect
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Данная команда выводит для подсвеченного типа объекта/класса
окно Inspector (Проверка).
Команда Tree
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Данная команда перемещает вас в правую область окна, в кото-
рой выведено дерево иерархии объектов, и помещает полосу подсвет-
ки на тип, который подсвечен в левой области.
TDeb 3.0 #2-3 = 33 =
Область дерева иерархии
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В правой области окна Hierarchy выводится дерево иерархии
для всех объектов или классов, использующихся в текущем модуле.
Отношения "предков" и "потомков" показаны линиями, при этом "по-
томки" расположены слева и ниже своих "предков".
Чтобы найти объект или класс конкретного типа в сложном де-
реве иерархии, перейдите обратно в левую область и используйте
средство инкрементального поиска (или поиска по возрастанию). За-
тем выберите в локальном меню элемент Tree (Дерево), чтобы перей-
ти обратно к дереву иерархии. Соответствующий тип выводится в по-
лосе подсветки.
При нажатии клавиши Enter для подсвеченного типа объек-
та/класса выводится окно Inspector (Проверка).
Если вы загрузили программу на языке C++, в которой исполь-
зуются классы с множественным наследованием, то выводится третья
область - дерево порождающих классов, которая расположена в окне
Hierarchy (Иерархия) ниже дерева иерархии. Если исследуемый вами
класс имеет нескольких "предков", то, если в локальном меню об-
ласти дерева иерархии выбрана команда Parent (Порождающий класс),
и для нее установлено значение Yes (Да), то области дерева порож-
дающих классов выводится обратное дерево (с сообщением "Parents
of Class" - "Порождающие классы для данного класса" в левой гра-
нице области). Ниже и правее левой границы выводятся "предки".
При этом линиями показаны отношения "предков" и "потомков".
Также, как и в области дерева иерархии, для любого класса,
выводимого в области дерева порождающих классов, можно открыть
окно Inspector (Проверка).
Локальные меню области дерева иерархии
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Локальное меню области дерева иерархии содержит только один
элемент - Inspect (Проверка). Когда вы его выбираете, для подсве-
ченного типа выводится окно проверки типа класса/объекта. Однако,
если вы хотите проверить подсвеченный тип, быстрее и проще будет
просто нажать клавишу Enter.
ЪДДДДДДДДДДДї
Проверка і Inspect і
АДДДДДДДДДДДЩ
Если вы загрузили программу на языке C++, в которой исполь-
зуются классы с множественным наследованием, то локальное меню
области дерева иерархии содержит два элемента: Inspect и Parents.
ЪДДДДДДДДДДДДДДДДДДДДї
Проверка і Inspect і
Предки і Parents Yes і
АДДДДДДДДДДДДДДДДДДДДЩ
TDeb 3.0 #2-3 = 34 =
Parents - это переключатель, с помощью которого вы можете
управлять выводом "предков" класса в области дерева порождающих
классов. Его полезно использовать, если проверяемый вами класс
имеет множественное наследование. По умолчанию данный переключа-
тель имеет значение Yes (Да).
Локальное меню области дерева порождающих классов
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Область дерева порождающих (родительских) классов, если она
присутствует, содержит локальное меню с единственной командой
|
adfun.ru
|
|
|
|