Просмотр и изменение кода с помощью окна «Показать определение» (ALT+F12)
Область применения:Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Команду Показать определение можно использовать для просмотра и изменения определений кода без переключения с текущего кода, над которым работает пользователь. Команды Показать определение и Перейти к определению отображают одни и те же сведения, но команда Перейти к определению отображает их во всплывающем окне, а команда Перейти к определению — в отдельном окне. При вызове команды Перейти к определению текущий контекст (т. е. активное окно кода, текущая строка и позиция курсора) переключается на окно кода определения. С помощью функции Показать определение можно просмотреть и изменить определение, а также перемещаться по файлу определения, оставаясь при этом на месте в изначально открытом файле исходного кода.
Команду Показать определение можно применить при работе с кодом C#, Visual Basic и C++. В Visual Basic в разделе Показать определение отображается ссылка на обозреватель объектов для символов, которые не имеют метаданных определения (например, встроенных типов .NET).
Использование функции «Показать определение»
Открытие окна «Показать определение»

- Вы можете показать определение, выбрав команду Показать определение в контекстном меню для типа или члена, который хотите просмотреть. Если этот параметр включен, вы также можете показать определение с помощью мыши, нажав клавишу CTRL (или другой модификатор) и щелкнув имя члена. Кроме того, можно нажать клавиши ALT+F12 на клавиатуре. На этой иллюстрации представлено окно Показать определение для метода с именем Print() : Окно определения отображается под строкой printer.Print(«Hello World!») в исходном файле. Данное окно не скрывает никакие фрагменты кода в исходном файле. Строки, следующие за printer.Print(«Hello World!») , отображаются под окном определения.
- Можно переместить курсор в другую точку в окне отображения определения. При этом вы сохраняете возможность перемещаться по исходному окну кода.
- Можно скопировать строку из окна определения и вставить ее в исходный код. Можно также перетащить строку из окна определения в исходный код, не удаляя ее из окна определения.
- Чтобы закрыть окно определения, нажмите клавишу ESC или кнопку Закрыть на вкладке окна определения.
Открытие окна «Показать определение» из окна «Показать определение»
Если окно Показать определение уже открыто, можно применить функцию Показать определение к коду в данном окне. В этом случае откроется еще одно окно определения. Рядом с вкладкой окна определения отображается набор точек навигации, который можно использовать для перехода из одного окна определения в другое. Всплывающая подсказка для каждой точки отображает имя файла и путь к файлу определения, представляемого данной точкой.

Окно «Показать определение» с несколькими результатами
При использовании окна Показать определение в коде, который содержит более одного определения (например, разделяемые классы), список результатов отображается справа от представления определения кода. Можно выбрать любой результат в списке, чтобы открыть его определение.

Правка содержимого окна «Показать определение»
Когда пользователь приступает к редактированию содержимого окна Показать определение, изменяемый файл автоматически открывается на отдельной вкладке в редакторе кода, отражая уже внесенные изменения. Если затем содержимое окна Показать определение будет изменено путем добавления данных, отмены и сохранения внесенных изменений, эти изменения будут отражены на этой вкладке. Даже если закрыть окно Показать определение без сохранения изменений, вы можете отменить, вносить, отменять и сохранять дополнительные изменения на вкладке, начав работу с того места в окне Показать определение, где вы закончили в прошлый раз.

Изменение параметров для функции «Показать определение»

- Последовательно выберите пункты Средства>Параметры>Текстовый редактор>Общие.
- Выберите параметр Открыть определение в быстром редакторе.
- Нажмите OK , чтобы закрыть диалоговое окно Параметры .
Сочетания клавиш при работе с окном «Показать определение»
При работе с окном Показать определение можно использовать следующие сочетания клавиш.
| Функция | Сочетания клавиш |
|---|---|
| Открытие окна определения | ALT+F12 |
| Закрытие окна определения | Esc |
| Преобразование окна определения в стандартную вкладку документа | CTRL+ALT+HOME |
| Переход из одного окна определения в другое | CTRL+ALT+— и CTRL+ALT+= |
| Переключение с одного результата на другой | F8 и SHIFT+F8 |
| Переключение между окном редактора кода и окном определения | SHIFT+ESC |
Для редактирования кода в окне Показать определение можно также использовать те же сочетания клавиш, что и в любом другом окне Visual Studio.
См. также
- Навигация по коду
- Функции «Перейти к определению» и «Показать определение»
- Возможности для повышения продуктивности в Visual Studio
Окно выходных данных
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Окно Вывод отображает сообщения о состоянии для различных функций в интегрированной среде разработки (IDE). Чтобы открыть окно Вывод, в строке меню выберите Представление>Вывод или нажмите клавиши CTRL+ALT+O.
Панель инструментов
Следующие элементы управления отображаются на панели инструментов в окне вывода.
Показать выходные данные из
Отображает одну или несколько областей вывода для просмотра. Может быть доступно несколько областей данных в зависимости от того, какие инструменты IDE использовали окно Вывод для доставки сообщений пользователю.
Поиск сообщения в коде
Перемещает точку вставки в редакторе кода на строку, содержащую выбранную ошибку сборки.
К предыдущему сообщению
Изменяет фокус в окне Вывод на предыдущую ошибку сборки и перемещает точку вставки в редакторе кода на строку, содержащую эту ошибку.
К следующему сообщению
Изменяет фокус в окне Вывод на следующую ошибку сборки и перемещает точку вставки в редакторе кода на строку, содержащую эту ошибку.
Очистить все
Удаляет весь текст из области Вывод.
Переносить по словам
Включает и отключает функцию переноса по словам в области Вывод. Если перенос по словам включен, текст, который выходит за пределы области просмотра, отображается на следующей строке.
Панель вывода
Область Вывод, выбранная в списке Показать выходные данные из, отображает выходные данные из заданного источника.
Маршрутизация сообщений в окно вывода
Чтобы отображать окно Вывод при каждой сборке проекта, в диалоговом окне Параметры на странице Проекты и решения>Общие выберите Показывать окно вывода при запуске сборки. Затем, когда файл кода открыт для редактирования, нажимайте кнопки К следующему сообщению и К предыдущему сообщению на панели инструментов окна Вывод для выбора записей в области Вывод. После этого точка вставки в редакторе кода переходит на строку кода, где находится выбранная ошибка.
Некоторые возможности и команды интегрированной среды разработки, вызываемые в командном окне, направляют свои выходные данные в окно Вывод. Выходные данные из внешних средств, таких как файлы BAT и COM, которые обычно отображаются в окне команд, направляются в область Вывод при выборе параметра Использовать окно вывода в окне Управление внешними инструментами. В областях Вывод могут отображаться и многие другие виды сообщений. Например, когда синтаксис Transact-SQL в хранимой процедуре проверяется по конечной базе данных, результаты отображаются в окне Вывод.
Также можно запрограммировать приложения для записи диагностических сообщений во время выполнения в область Вывод. Для этого используйте члены класса Debug или Trace в пространстве имен System.Diagnostics API .NET. Члены класса Debug отображают выходные данные при сборке конфигураций отладки проекта или решения; члены класса Trace отображают выходные данные при сборке конфигурации отладки или выпуска. Дополнительные сведения см. в разделе Диагностические сообщения в окне вывода.
В C++ можно создать настраиваемые этапы и события сборки, предупреждения и ошибки которых отображаются и учитываются в области Вывод. Нажав клавишу F1 на строке выходных данных, можно отобразить соответствующий раздел справки. Дополнительные сведения см. в разделе Форматирование выходных данных этапа настраиваемой сборки или события сборки.
Поведение прокрутки
Если в окне вывода используется автоматическая прокрутка и вы выполняете переход с помощью мыши или клавиш со стрелками, автоматическая прокрутка останавливается. Чтобы возобновить автопрокрутку, нажмите клавиши CTRL+END.
Структурированная диагностика
Проекты C++ MSBuild могут выдавать структурированные диагностика. Уровень отступа диагностики в окне вывода представляет вложенную структуру информации. Включите или отключите отступ с помощью параметра «>Расширенные свойства проекта>>» включить структурированный выход MSVC. Вы можете повлиять на несколько проектов, создав файл Directory.Build.props со свойством UseStructuredOutput, определенным как true или false.
См. также
- Диагностические сообщения в окне вывода
- Практическое руководство. Управление окном вывода
- Компиляция и сборка
- Общие сведения о конфигурациях сборок
- Общие сведения о библиотеке классов
Как в visual studio code запустить html
Самый простой способ — открыть папку с файлами через проводник, выбрать необходимый файл, щелкнуть по нему правой кнопкой мыши и выбрать в разделе «Открыть с помощью» VS Code. Далее можно заняться редактированием файла. Вы увидите результат вёрстки в браузере, но это не слишком удобно — при любых изменениях придётся переходить в браузер и обновлять страницу. Можно немного облегчить этот вопрос с помощью установки расширения в VS Code — Live Server . Давайте настроим всё так, чтобы наша страничка открывалась сама и обновлялась, если вы что-то изменили в разметке или стилях. Для установки расширения нужно в VS Code нажать кнопку которая откроет магазин дополнений, вбить в поиске название — и нажать Install. Другой способ — скачать Live Server из магазина расширений по ссылке выше, но это менее удобно.

После установки расширения и запуска вашего HTML-файла нужно нажать кнопку «Go live», в результате откроется окно браузера с вашей страницей. При попытке изменения файла — будет происходить автоматическое обновление страницы браузера.
Отладка для абсолютных начинающих
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Независимо от обстоятельств код, создаваемый разработчиками программного обеспечения, далеко не всегда работает так, как задумано. В некоторых случаях все идет совершенно не по плану! Когда происходит непредвиденное, следующая задача заключается в том, чтобы выяснить, почему, и хотя мы можем просто заманчиво просто следить за нашим кодом в течение нескольких часов, проще и эффективнее использовать средство отладки или отладчик.
К сожалению, отладчик не является той волшебной палочкой, по мановению которой будут выявлены абсолютно все проблемы в коде. Процесс отладки подразумевает пошаговое выполнение кода в средстве отладки (например, в Visual Studio) в поисках точки, в которой вы допустили ошибку при написании программы. Таким образом вы узнаете, какие исправления нужно внести в код. При этом средства отладки часто позволяют вносить временные изменения, чтобы продолжить работу с программой.
Эффективное использование отладчика также требует определенных навыков, которые вырабатываются только с практикой, однако умение работать с ним является основополагающим требованием к любому разработчику программного обеспечения. В этой статье мы представим основные принципы отладки и некоторые начальные рекомендации.
Проанализируйте проблему, задавая себе правильные вопросы
Это поможет вам выяснить, в чем состоит проблема, прежде чем приступать к ее решению. Мы полагаем, что вы уже сталкивались с проблемами в коде, иначе вряд ли читали бы сейчас эту статью в поисках советов по его отладке! Итак, прежде чем начать отладку, проанализируйте проблему, которую вы пытаетесь решить:
- Что именно должен был выполнить код?
- Что произошло на самом деле? Если при запуске приложения возникает ошибка (исключение), это может быть хорошо! Исключение возникает в том случае, если при выполнении кода происходит непредвиденное событие (как правило, это ошибка какого-либо рода). С помощью средства отладки вы можете перейти точно к тому месту в коде, где возникло исключение, и исследовать возможные способы исправления ситуации. Если произошло что-то еще, каковы признаки проблемы? Есть ли у вас предположения относительно того, в каком месте кода возникла проблема? Например, если код должен выводить какой-то текст, но при этом текст содержит ошибки, вы можете сделать вывод, что в этом случае используются неверные данные или код вывода текста содержит ошибки другого рода. При пошаговом выполнении кода в отладчике вы можете изучить каждое изменение переменных и точно определить, когда и каким образом были присвоены неверные значения.
Проверьте свои предположения
Прежде чем исследовать причины возникновения ошибки, проверьте предположения, на основании которых вы ожидаете тот или иной результат. Неявные или неизвестные вам предположения могут помешать выявлению проблемы, даже если вы прямо смотрите на ее причину в отладчике. У вас может быть длинный список возможных предположений! Чтобы проверить их, задайте себе несколько вопросов.
- Используете ли вы нужный API (то есть соответствующие объект, функцию, метод или свойство)? Возможно, используемый вами API работает не так, как вы ожидаете. (После проверки вызова API в отладчике исправление может потребовать поездки в документацию, чтобы определить правильный API.)
- Правильно ли вы используете API? Даже если вы выбрали нужный API, он может использоваться неправильно.
- Нет ли в вашем коде опечаток? Некоторые опечатки, например ошибки в написании имени переменной, могут быть незаметными, особенно при работе с языками, в которых не требуется объявление переменных перед их использованием.
- Вносили ли вы в код изменения, полагая, что они никак не связаны с возникшей проблемой?
- Должны ли объект или переменная содержать определенное значение (или определенный тип значения) и соответствует ли это действительности?
- Известно ли назначение кода? Отлаживать чужой код часто бывает сложнее. Если это не ваш код, возможно, для его эффективной отладки вам потребуется изучить, что он делает.
Совет При написании кода начинайте с небольших и гарантированно работающих фрагментов! (Хороший пример кода полезен здесь.) Иногда проще исправить большой или сложный набор кода, начиная с небольшого фрагмента кода, демонстрирующего основную задачу, которую вы пытаетесь достичь. Затем вы можете последовательно изменять или добавлять код в поисках точки возникновения ошибки.
Подспрошив предположения, вы можете сократить время, необходимое для поиска проблемы в коде. Вы также можете сократить время, необходимое для устранения проблемы.
Используйте режим пошагового выполнения во время отладки для поиска места возникновения проблемы.
Очевидно, что ошибки и неверные результаты можно увидеть только после выполнения кода приложения. Кроме того, работа программы может завершиться неожиданно без каких-либо сообщений.
При запуске приложения в отладчике, который также называется режимом отладки, отладчик активно отслеживает все, что происходит при запуске программы. Кроме того, вы можете в любой точке приостановить работу приложения, исследовать его состояние и пошагово выполнять код в каждой строке, чтобы видеть в деталях, что происходит.

В Visual Studio введите режим отладки с помощью F5 (или > команды меню «Запуск отладки» или кнопки «Начать отладку» на панели инструментов отладки). Если возникает исключение, помощник по исправлению ошибок Visual Studio направит вас к точке его появления и предоставит другую необходимую информацию. См. дополнительные сведения об обработке исключений в коде в разделе Приемы и инструменты отладки.
Если исключение не возникает, возможно, вы имеете некоторое представление о том, где искать проблему в коде. Этот шаг заключается в том, что вы используете точки останова с отладчиком, чтобы дать себе возможность тщательно изучить код. Точки останова — это самая основная и важная функция надежной отладки. Точка останова указывает, в каком месте Visual Studio следует приостановить выполнение, чтобы вы могли проверить значения переменных, работу памяти или последовательность выполнения кода.
Чтобы задать точку останова в Visual Studio, достаточно щелкнуть в левом поле рядом с интересующей вас строкой кода. Также для этого можно поместить указатель мыши в нужную строку и нажать клавишу F9.
Чтобы продемонстрировать это, мы рассмотрим пример кода, который уже содержит несколько ошибок. Здесь мы используем C#, однако функции отладки также применяются для Visual Basic, C++, JavaScript, Python и других поддерживаемых языков. Также предоставлен пример кода для Visual Basic, но снимки экрана приведены для C#.
Создание образца приложения с ошибками
Затем вы создадите приложение с несколькими ошибками.
- Необходимо установить Visual Studio и рабочую нагрузку разработки для классических приложений .NET. Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого. Если необходимо установить рабочую нагрузку, но у вас уже есть Visual Studio, выберите «Сервис >получения инструментов» и «Компоненты». Запускается Visual Studio Installer. Выберите рабочую нагрузку Разработка классических приложений .NET и нажмите Изменить.
- Откройте Visual Studio. На начальном экране выберите Создать проект. Введите консоль в поле поиска, выберите C# или Visual Basic в качестве языка, а затем выберите консольное приложение для .NET. Нажмите кнопку Далее. Введите имя проекта, например ConsoleApp_FirstApp , и нажмите кнопку «Далее«. Выберите рекомендуемую целевую платформу или .NET 8, а затем нажмите кнопку «Создать«. Если вы не видите шаблон проекта консольного приложения для .NET, перейдите в раздел «Сервис >получения инструментов и функций«, который открывает установщик Visual Studio. Выберите рабочую нагрузку Разработка классических приложений .NET и нажмите Изменить. Visual Studio создаст консольный проект и откроет его в Обозревателе решений в области справа.
- Откройте файл Program.cs (или Program.vb) и замените все его содержимое по умолчанию следующим кодом. (Сначала выберите вкладку для нужного языка: C# или Visual Basic.)
using System; using System.Collections.Generic; namespace ConsoleApp_FirstApp < class Program < static void Main(string[] args) < Console.WriteLine("Welcome to Galaxy News!"); IterateThroughList(); Console.ReadKey(); >private static void IterateThroughList() < var theGalaxies = new List< new Galaxy() < Name="Tadpole", MegaLightYears=400, GalaxyType=new GType('S')>, new Galaxy() < Name="Pinwheel", MegaLightYears=25, GalaxyType=new GType('S')>, new Galaxy() < Name="Cartwheel", MegaLightYears=500, GalaxyType=new GType('L')>, new Galaxy() < Name="Small Magellanic Cloud", MegaLightYears=.2, GalaxyType=new GType('I')>, new Galaxy() < Name="Andromeda", MegaLightYears=3, GalaxyType=new GType('S')>, new Galaxy() < Name="Maffei 1", MegaLightYears=11, GalaxyType=new GType('E')>>; foreach (Galaxy theGalaxy in theGalaxies) < Console.WriteLine(theGalaxy.Name + " " + theGalaxy.MegaLightYears + ", " + theGalaxy.GalaxyType); >// Expected Output: // Tadpole 400, Spiral // Pinwheel 25, Spiral // Cartwheel, 500, Lenticular // Small Magellanic Cloud .2, Irregular // Andromeda 3, Spiral // Maffei 1, 11, Elliptical > > public class Galaxy < public string Name < get; set; >public double MegaLightYears < get; set; >public object GalaxyType < get; set; >> public class GType < public GType(char type) < switch(type) < case 'S': MyGType = Type.Spiral; break; case 'E': MyGType = Type.Elliptical; break; case 'l': MyGType = Type.Irregular; break; case 'L': MyGType = Type.Lenticular; break; default: break; >> public object MyGType < get; set; >private enum Type < Spiral, Elliptical, Irregular, Lenticular>> >
Imports System Imports System.Collections.Generic Namespace ConsoleApp_FirstApp Friend Class Program Public Shared Sub Main(ByVal args As String()) Console.WriteLine("Welcome to Galaxy News!") Call IterateThroughList() Console.ReadKey() End Sub Private Shared Sub IterateThroughList() Dim theGalaxies = New List(Of Galaxy) From < New Galaxy() With < .Name = "Tadpole", .MegaLightYears = 400, .GalaxyType = New GType("S"c) >, New Galaxy() With < .Name = "Pinwheel", .MegaLightYears = 25, .GalaxyType = New GType("S"c) >, New Galaxy() With < .Name = "Cartwheel", .MegaLightYears = 500, .GalaxyType = New GType("L"c) >, New Galaxy() With < .Name = "Small Magellanic Cloud", .MegaLightYears = 0.2, .GalaxyType = New GType("I"c) >, New Galaxy() With < .Name = "Andromeda", .MegaLightYears = 3, .GalaxyType = New GType("S"c) >, New Galaxy() With < .Name = "Maffei 1", .MegaLightYears = 11, .GalaxyType = New GType("E"c) >> For Each theGalaxy As Galaxy In theGalaxies Console.WriteLine(theGalaxy.Name & " " & theGalaxy.MegaLightYears & ", " & theGalaxy.GalaxyType) Next End Sub End Class Public Class Galaxy Public Property Name As String Public Property MegaLightYears As Double Public Property GalaxyType As Object End Class Public Class GType Shared Operator &(ByVal left As String, ByVal right As GType) As String Return New String(left & right.ToString()) End Operator Public Sub New(ByVal type As Char) Select Case type Case "S"c MyGType = GType.Type.Spiral Case "E"c MyGType = GType.Type.Elliptical Case "l"c MyGType = GType.Type.Irregular Case "L"c MyGType = GType.Type.Lenticular Case Else End Select End Sub Private _MyGType As String Public Property MyGType As Object Get Return _MyGType End Get Set(ByVal value As Object) _MyGType = value.ToString() End Set End Property Private Enum Type Spiral Elliptical Irregular Lenticular End Enum End Class End Namespace
Этот код выводит список, содержащий название галактики, расстояние до нее, а также тип галактики. При отладке важно учитывать предназначение кода. Ниже показан формат одной строки из списка, который мы хотим отобразить в выводе:
название галактики, расстояние, тип галактики.
Выполнить приложение

Нажмите клавишу F5 или кнопку «Начать отладку» на панели инструментов отладки, расположенной над редактором кода.
По результатам запуска приложения отладчик не демонстрирует никаких исключений. Тем не менее данные, выводимые в окне консоли, не соответствуют ожиданиям. Вот что мы должны были увидеть:
Tadpole 400, Spiral Pinwheel 25, Spiral Cartwheel, 500, Lenticular Small Magellanic Cloud .2, Irregular Andromeda 3, Spiral Maffei 1, Elliptical
Но вместо этого вы увидите следующие выходные данные:
Tadpole 400, ConsoleApp_FirstApp.GType Pinwheel 25, ConsoleApp_FirstApp.GType Cartwheel, 500, ConsoleApp_FirstApp.GType Small Magellanic Cloud .2, ConsoleApp_FirstApp.GType Andromeda 3, ConsoleApp_FirstApp.GType Maffei 1, 11, ConsoleApp_FirstApp.GType
По выходным данным и коду мы видим, что GType — это имя класса, содержащего тип галактики. Но мы пытаемся отобразить сам тип (например, Spiral, то есть спиральная), а не имя класса!
Отладка приложения
- Пока приложение еще работает, вставьте точку останова. Щелкните правой кнопкой мыши рядом с Console.WriteLine методом, чтобы получить контекстное меню и выберите точку останова вставить точку > останова в всплывающем меню.
foreach (Galaxy theGalaxy in theGalaxies)
For Each theGalaxy As Galaxy In theGalaxies Console.WriteLine(theGalaxy.Name & " " & theGalaxy.MegaLightYears & ", " & theGalaxy.GalaxyType) Next
В месте установки точки останова в левом поле появится красный круг.
При возникновении проблемы в выходных данных вы начинаете отладку, просматривая предыдущий код, который задает выходные данные в отладчике.
» на панели инструментов отладки (CTRL + SHIFT +F5). Выполнение приложения приостановится в заданной точке останова. Место приостановки отладчика будет выделено желтым цветом (при этом желтая строка кода еще не выполнена).
Изначально вы ожидаете, что в окно консоли будет выведено именно значение Spiral. Поэтому вы можете получить доступ к значению в этом коде при запуске приложения. В этом сценарии мы используем неверный API-интерфейс. Давайте посмотрим, можно ли исправить это при выполнении кода в отладчике.

Примечание. Для отладки кода примера Visual Basic пропустите следующие несколько шагов, пока не будет указано, как нажать кнопку «Перезапустить «.

public object GalaxyType
public GType GalaxyType

Tadpole 400, Spiral Pinwheel 25, Spiral Cartwheel, 500, Lenticular Small Magellanic Cloud .2, Andromeda 3, Spiral Maffei 1, Elliptical
public GType(char type)
Public Sub New(ByVal type As Char)
Здесь задается тип галактики, поэтому нам необходимо изучить эту строку более пристально.
» на панели инструментов отладки (CTRL + SHIFT +F5), чтобы перезапустить. Отладчик приостановит работу в строке кода, где вы задали точку останова.
Взглянув на код, вы заметите опечатку в инструкции case ‘l’ . Оно должно иметь значение case ‘I’ .Итоги
Если вы сталкиваетесь с проблемой, воспользуйтесь отладчиком и командами пошагового выполнения, такими как F10 и F11, для поиска области кода, в которой возникают ошибки.
Если выявить проблемную область кода не удается, задайте точку останова в коде, который выполняется перед возникновением ошибки, после чего используйте команды пошагового выполнения, пока проблема не проявится. Также вы можете использовать точки трассировки для вывода сообщений в окно вывода. Анализируя сообщения, которые выводятся в окно или отсутствуют в нем, нередко можно изолировать область кода, где возникает проблема. Для дальнейшего сужения области поиска этот процесс может потребоваться повторить несколько раз.
Выявив проблемную область кода, используйте отладчик для ее детального анализа. Чтобы определить причину возникновения проблемы, проверьте код во время выполнения приложения в отладчике.
- Проверьте переменные и убедитесь, что они содержат значения того типа, который вы ожидаете. Если переменная содержит недопустимое значение, найдите, где оно было задано. Для этого может потребоваться перезапустить отладчик, проверить стек вызовов или выполнить одновременно оба этих действия.
- Проверьте, выполняет ли ваше приложение код, который вы ожидаете. (Так, в примере приложения должна была выполняться инструкция switch , задающая тип галактики Irregular, однако нужный код был пропущен из-за опечатки.)
Отладчик представляет собой эффективное средства для выявления ошибок. Средство отладки может искать ошибки вместо вас в том случае, если ему известно предназначение кода. Для этого вы должны указать предназначение. Этого можно добиться с помощью модульных тестов.
Следующие шаги
Из этой статьи вы узнали общие принципы отладки приложений. Теперь вы можете приступить к изучению других возможностей отладчика.
