Среды разработки
Для создания программы на C++ нам нужны, как минимум, две вещи: текстовый редактор для набора кода и компилятор для превращения этого кода в приложение. При этом для компиляции необходимо запускать консоль или терминал. Однако есть и более удобный способ — использование различных сред разработки или IDE. Они, как правило, содержит встроенный текстовый редактор, компилятор и позволяют скомпилировать и запустить программу по одному клику мыши, а также имеют еще множество разных вспомогательных возможностей.
Для программирования под Windows наиболее популярной средой разработки, если говорить о C++, является Visual Studio. Данную среду можно найти по ссылке https://visualstudio.microsoft.com/ru/vs/community/.
После загрузки и запуска установщика Visual Studio в нем необходимо отметить пункт Разработка классических приложений на C++ :

Выбрав все необходимые пункты, нажмем ОК для запуска установки. После установки Visual Studio создадим первый проект. Для этого откроем Visual Studio. На стартовом экране среди шаблонов проектов для языка C++ выберем тип Console App , который представляет шаблон консольного приложения:

На следующем экране в поле для имени проекта дадим проекту имя HelloApp и также можно указать расположение проекта. И затем нажмем на Create для создания проекта.

После этого Visual Studio создаст типовой проект консольного приложения на C++.

Справа в окне Solution Explorer отображается структура проекта. В реальности окно Solution Explorer содержит в решение. В данном случае оно называется HelloApp. Решение может содержать несколько проектов. По умолчанию у нас один проект, который имеет то же имя — HelloApp. В проекте есть ряд узлов:
- External Dependencies : отображает файлы, которые используются в файлах исходного кода, но не являются частью проекта
- Header Files : предназначена для хранения заголовочных файлов с расширением .h
- Resource Files : предназначена для хранения файлов ресурсов, например, изображений
- Source Files : хранит файлы с исходным кодом
По умолчанию каталог Source Files содержит один файл с исходным кодом — HelloApp.cpp ( название проекта + расширение файла .cpp — как правило, исходные файлы на C++ имеют расширение .сpp ).
HelloApp.cpp содержит код на языке C++, и именно этот код мы можем увидеть в слева в текстовом редакторе Visual Studio. По умолчанию HelloApp.cpp содержит следующий код:
#include // подключение модуля iostream int main() // определяем функцию main < // начало функции std::cout
Здесь использован весь тот код, который был рассмотрен в начальных темах.
Теперь запустим программу. Для этого в Visual Studio нажмем на сочетание клавиш Ctrl+F5 или выберем пункт меню Debug -> Start Without Debugging :

И в итоге Visual Studio передаст исходный код компилятору, который скомпилирует из кода исполняемый файл exe, который потом будет запущен на выполнение. И мы увидим на запущенной консоли наше сообщение:

После этого на жестком диске в папке решения в каталоге \x64\Debug скомпилированный файл exe, который мы можем запускать независимо от Visual Studio:

В данном случае файл HelloApp.exe как раз и представляет скомпилированный исполняемый файл. И, кроме того, в той же папке автоматически генерируется вспомогательный файл - HelloApp.pdb , который содержит отладочную информацию.
Настройка проекта
Для языка C++ есть несколько стандартов, каждый из которых добавляет некоторые дополнительные возможности. И Visual Studio позволяет задать стандарт, который будет использоваться при компиляции приложения. Для этого перейдем к свойствам проекта:

А в окне свойств перейдем к пункту Configuration Properties -> C/C++ -> Language . На открывшемся окне свойств с помощью опции C++ Language Standard можно задать стандарт языка, который мы хотим использовать:
Как запустить код Java в VSCODE Windows?
Всем привет, сразу скажу я полный ноль в вашей области, нашел книжку Шилдта по джава, ради интереса читаю, пишу чет, вроде бы интересно. До момента с проблемой (которую я укажу ниже) всё было нормально. Я настроил vscode, скачал все расширения для джавы, в общем код компилировался, всё было хорошо (это было на 7 винде). Спустя неделю где-то поставил 10 винду, скачал vscode, jdk, поставил необходимые расширения, но возникла проблема: тот код который у меня остался в компе теперь не запускается, да и новый не работает, нет никаких ошибок (ну или я их не вижу), запускается дебаггер и ничего не происходит. Я честно пытался гуглить, нашел что-то про PATH и тд, переустанавливал расширения, jdk, ничего не помогает. Подскажите пожалуйста, заранее благодарю.
Запуск

Еще появляется такая плашка

Дебаггер

UPD: Сейчас проверил как работает в питоне. Там всё нормально, но почему то показывает будто бы я ?запускаю? из E: /Jawa (да я знаю что правильно Java). Может ли это быть как то связано? Ниже скрин.

P.S. Я понимаю что VSCode для java не самый лучший выбор, но ведь работало до этого всё.
- Вопрос задан более года назад
- 1358 просмотров
Оптимизация времени запуска Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Система Visual Studio рассчитана на максимально быстрый и эффективный запуск. Однако некоторые расширения и окна инструментов Visual Studio могут негативно повлиять на время запуска при загрузке. Вы можете управлять поведением медленных расширений и окон инструментов в диалоговом окне Диспетчера производительности. Дополнительные сведения о повышении производительности см. в рекомендациях по оптимизации работы Visual Studio.
Поведение при запуске
Чтобы избежать задержек при запуске, Visual Studio загружает расширения по запросу. Это означает, что расширения открываются не сразу после запуска Visual Studio, а по мере необходимости. Кроме того, поскольку окна инструментов, оставшиеся открытыми в предыдущем сеансе Visual Studio, могут увеличить время запуска, Visual Studio более разумно открывает окна инструментов, чтобы исключить влияние на время запуска.
Если Visual Studio обнаружит медленный запуск, появится всплывающее сообщение с предупреждением, указывающим на расширение или окно инструмента, которое является причиной замедления. Сообщение содержит ссылку на диалоговое окно Диспетчера производительности. Вы также можете получить доступ к этому диалоговому окне, выбрав в строке меню справку >по диспетчеру производительности Visual Studio.

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

- Откройте диалоговое окно диспетчера производительности, выбрав "Справка >по диспетчеру производительности Visual Studio" в строке меню. Если расширение замедляет запуск Visual Studio, загрузку решения или ввод, расширение отображается в диалоговом окне Диспетчера производительности в разделе "Запуск расширений>" (или "Загрузка решения" или "Ввод).
- Выберите расширение, которое нужно отключить, и нажмите кнопку Отключить.
Вы всегда можете повторно включить расширение для будущих сеансов с помощью диспетчера расширений или диалогового окна Диспетчера производительности Visual Studio.
Изменение параметров окна инструментов для ускорения запуска

- Откройте диалоговое окно диспетчера производительности, выбрав "Справка >по диспетчеру производительности Visual Studio" в строке меню. Если окно инструментов замедляет запуск Visual Studio, окно инструментов отображается в диалоговом окне диспетчера производительности в разделе запуска Windows>tool.
- Выберите окно инструментов, поведение которого хотите изменить.
- Выберите один из следующих трех параметров:
- Использовать поведение по умолчанию. Поведение по умолчанию для окна инструментов. Сохранение этого параметра не улучшит производительность запуска.
- Не показывать окно при запуске. При выборе этого параметра указанное окно инструментов всегда будет закрытым при открытии Visual Studio, даже если оно было оставлено открытым в предыдущем сеансе. При необходимости вы можете открыть окно инструментов из соответствующего меню.
- Автоматически скрывать окно при запуске. Если окно инструментов было оставлено открытым в предыдущем сеансе, этот параметр позволит сворачивать группу окон инструментов при запуске, чтобы не открывать окно инструментов. Этот вариант удобен при частом использовании окна инструментов. При этом окно по-прежнему доступно, но больше не оказывает негативное влияние на время запуска Visual Studio.
Некоторые более ранние версии Visual Studio имели функцию с именем упрощенной загрузки решения. В текущих версиях крупные решения, содержащие управляемый код, загружаются значительно быстрее, чем раньше, даже без функции загрузки упрощенного решения.
См. также
- Оптимизация производительности Visual Studio
- Советы и рекомендации по улучшению работы Visual Studio
Ознакомьтесь с советами и рекомендациями по повышению производительности отладчика в Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этой статье приводятся советы и рекомендации по работе с отладчиком в Visual Studio. Обзор основных возможностей отладчика см. в статье Первое знакомство с отладчиком. В этой статье рассматриваются некоторые моменты, не включенные в обзор возможностей.
сочетания клавиш;
Список наиболее распространенных сочетаний клавиш, связанных с отладкой, см . в разделе "Отладка " в сочетаниях клавиш.
Советы по закреплению данных
Если во время отладки вы часто наводите указатель мыши на подсказки по данным, можно закрепить подсказку для переменной, чтобы получать к ней быстрый доступ. Переменная остается закрепленной даже после перезапуска. Чтобы закрепить подсказку по данным, наведите на нее курсор и щелкните значок булавки. Можно закрепить несколько переменных.

Есть несколько других способов настроить советы по работе, например расширять подсказку данных (подсказка данных типа записки) или устанавливать для нее прозрачность. Дополнительные сведения см. в статье Просмотр значений данных в подсказках по данным в редакторе кода.
Изменение кода и продолжение отладки (C#, VB, C++)
В большинстве языков, поддерживаемых Visual Studio, можно изменять код во время сеанса отладки, а затем продолжать отладку. Для использования этой функции щелкните код, чтобы установить в нем курсор, когда отладчик приостановлен, внесите изменения и нажмите клавишу F5, F10 или F11, чтобы продолжить отладку.
Дополнительные сведения об этой функции и ее ограничениях см. в статье Изменить и продолжить.
Изменение кода XAML и продолжение отладки
Сведения об изменении кода XAML во время сеанса отладки см. в статье Создание и отладка выполняющегося кода XAML с помощью горячей перезагрузки XAML.
Отладка проблем, которые трудно воспроизвести
Если вам трудно воссоздать определенное состояние в своем приложении или на это уходит много времени, подумайте, может ли помочь использование условной точки останова. Можно использовать условные точки останова и фильтровать точки останова, чтобы избежать разбиения кода приложения, пока приложение не перейдет в нужное состояние (например, состояние, в котором переменная хранит неправильные данные). Вы можете установить условия, используя выражения, фильтры или счетчики попаданий и т. д.
Создание условной точки останова

- Щелкните правой кнопкой мыши значок точки останова (красный шар) и выберите "Условия".
- В окне Параметры точки останова введите выражение.
- Если вы заинтересованы в другом типе условия, выберите Фильтр вместо Условное выражение в диалоговом окне Параметры точки останова, а затем следуйте советам для фильтра.
Настройка отображения данных в отладчике
С помощью атрибута DebuggerDisplay в C#, Visual Basic и C++ (только для кода C++/CLI) можно указать отладчику, какую информацию следует отображать. Для кода C++ то же самое можно сделать с помощью визуализаций Natvis.
Присоединение к одному приложению многократно
При использовании функции подключения к процессу можно быстро выполнить повторное присоединение к процессу, к которому вы ранее подключились, выбрав> "Повторно подключить отладку к процессу" (SHIFT +ALT+P). При выборе этой команды отладчик сразу же попытается подключиться к последнему процессу, к которому вы подключились, сначала попытаясь сопоставить идентификатор предыдущего процесса и, если это не удается, сопоставив имя предыдущего процесса. Если совпадений не найдено или несколько процессов имеют одно и то же имя, откроется диалоговое окно Подключение к процессу, в котором можно выбрать правильный процесс.
Отслеживание объекта, не входящего в область (C#, Visual Basic)
Можно легко просматривать переменные с помощью окон отладчика, таких как окно Контрольные значения. Однако если переменная выходит из область в окне "Контрольные данные", вы можете заметить, что она неактивна. В некоторых сценариях приложений значение переменной может измениться даже в том случае, если переменная не область, и вы можете внимательно наблюдать за ней (например, переменная может получить сбор мусора). Для отслеживания переменной создайте для нее идентификатор объекта в окне Контрольные значения.
Создание идентификатора объекта

- Установите точку останова рядом с переменной, которую необходимо отслеживать.
- Запустите отладчик (F5) и остановите его в точке останова.
- Найдите переменную в окне Локальные (Отладка > Окна > Локальные), щелкните переменную правой кнопкой мыши и выберите команду Создать идентификатор объекта.
- В окне $ вы должны увидеть символ Локальные . Эта переменная является идентификатором объекта.
- Щелкните правой кнопкой мыши переменную идентификатора объекта и выберите пункт Добавить контрольное значение.
Просмотр возвращаемых значений для функций
Чтобы просмотреть возвращаемые значения для функций, при пошаговом выполнении кода взгляните на функции, отображаемые в окне Видимые. Чтобы просмотреть возвращаемое значение для функции, убедитесь, что нужная функция уже выполнена (нажмите F10 один раз, если в данный момент вы остановились на вызове функции). Если окно закрыто,выберите Отладка > Окна > Видимые, чтобы открыть окно Видимые.

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

Кроме того, в окнах Контрольные значения и Интерпретация можно использовать псевдопеременные, такие как $ReturnValue .
Проверка строк в визуализаторе
![]()
При работе со строками может быть целесообразно просмотреть всю отформатированную строку. Чтобы просмотреть строку обычного текста, XML, HTML или JSON, щелкните значок с увеличением стекла при наведении указателя мыши на переменную, содержащую строковое значение.

Визуализатор строк может помочь определить, имеет ли строка неправильный формат, в зависимости от типа строки. Например, пустое поле Значение указывает, что строка не распознается типом визуализатора. Дополнительные сведения см. в статье Диалоговое окно визуализатора строк.

Для некоторых других типов, таких как объекты DataSet и DataTable, отображаемых в окнах отладчика, можно также открыть встроенный визуализатор.
Анализ данных об использовании памяти
Вы можете принимать и сравнивать моментальные снимки кучи, оптимизировать использование памяти и найти утечку памяти с помощью средств использования памяти. Дополнительные сведения см. в разделе "Выбор средства анализа памяти".
Создание файла дампа
Файл дампа — это моментальный снимок, показывающий процесс, который выполнялся и модули, загруженные для приложения в определенный момент времени. Дамп со сведениями о куче также содержит моментальный снимок памяти приложения на этот момент. В основном дампы используются для отладки проблем на компьютерах, к которым у разработчиков нет доступа.
Если необходимо сохранить файл дампа, выберите " Сохранить отладочный > дамп как".
Чтобы проанализировать файл дампа, выберите "Открыть файл>" в Visual Studio. Чтобы начать отладку с помощью файла дампа, выберите "Отладка с управляемым только", "Отладка с собственным только", "Отладка с смешанным" или "Отладка с помощью управляемой памяти".
Дополнительные сведения см. в разделе "Файлы дампа".
Прерывание выполнения кода при обработанных исключениях
Отладчик прерывает выполнение кода при необработанных исключениях. Однако обработанные исключения (например, исключения, возникающие в блоке try/catch ) могут также быть источником ошибок и, возможно, вам потребуется изучить их. Можно настроить прерывание работы отладчика при обработанных исключениях, а также настроить параметры в диалоговом окне Параметры исключений. Откройте это диалоговое окно, выбрав Отладка > Окна > Параметры исключений.
В диалоговом окне Параметры исключений можно указать отладчику прерывать выполнение кода при конкретных исключениях. На приведенном ниже рисунке отладчик прерывает выполнение кода при возникновении System.NullReferenceException . Дополнительные сведения см. в статье Управление исключениями.

Изменение потока выполнения
Когда отладчик приостановил выполнение на строке кода, с помощью мыши захватите указатель с желтой стрелкой в левой части. Переместите указатель с желтой стрелки на другую точку в пути выполнения кода. Чтобы продолжить выполнение приложения, нажмите клавишу F5 или выполните шаг-команду.
Изменяя поток выполнения, можно решать множество задач, например тестировать различные пути выполнения кода или повторно выполнять код без перезапуска отладчика. Дополнительные сведения см. в разделе "Перемещение указателя exeuction".
Как правило, при работе с этой функцией необходимо соблюдать осторожность — вы увидите соответствующее предупреждение во всплывающей подсказке. Могут отображаться и другие предупреждения. При перемещении указателя предыдущее состояние приложения не возвращается.
Отладка взаимоблокировок и состояний гонки
Если необходимо отладить проблемы, которые являются общими для многопоточных приложений, зачастую бывает полезно просматривать расположение потоков во время отладки. Это можно легко сделать с помощью кнопки Показать потоки в исходном коде.
Чтобы отобразить потоки в исходном коде, выполните следующее:
- При отладке нажмите кнопку
"Показать потоки в источнике" на панели инструментов отладки. - Посмотрите на переплет в левой части окна. На этой строке отображается значок
маркера потока, который напоминает две ткани. маркер потока указывает, что некий поток остановлен в этом месте. Обратите внимание, что маркер потока может быть частично скрыт точкой останова. - Наведите указатель мыши на маркер потока. Появится подсказка. Подсказка сообщает имя и идентификационный номер каждого остановившегося тут потока. Расположение потоков можно также просмотреть в окне Параллельные стеки.
Узнайте, как отладчик подключается к приложению (C#, C++, Visual Basic, F#)
Чтобы присоединиться к выполняющемуся приложению, отладчик загружает файлы символов (PDB), созданные для той же сборки приложения, которую нужно отладить. В некоторых сценариях могут потребоваться базовые сведения о файлах символов. Изучить загрузку файлов символов в Visual Studio можно с помощью окна Модули.
Откройте окно Модули во время отладки, выбрав Отладка > Окна > Модули. В окне Модули можно узнать, какие модули будут рассматриваться отладчиком в качестве пользовательского кода (или моего кода), а также проверить состояние загрузки символов для модуля. В большинстве сценариев отладчик автоматически находит файлы символов для пользовательского кода, но, если требуется выполнить шаг с заходом (или отладку) в код .NET, системный код или сторонний код библиотеки, необходимо выполнить дополнительные действия для получения нужных файлов символов.

Сведения о символах можно загрузить непосредственно из окна Модули, щелкнув правой кнопкой мыши и выбрав пункт Загрузить символы.
Иногда разработчики приложений поставляют приложения без соответствующих файлов символов (в целях уменьшения объема памяти), но сохраняют копию соответствующих файлов символов для сборки, чтобы отладить выпущенную версию позже.
Сведения о том, каким образом отладчик классифицирует код как пользовательский, см. в статье об отладке пользовательского кода с помощью функции "Только мой код". Дополнительные сведения об файлах символов см. в статье Указание файлов символов (PDB) и файлов с исходным кодом в отладчике Visual Studio.
Подробнее
Дополнительные советы и рекомендации, а также более подробные сведения см. в следующих записях блога.
- 7 lesser known hacks for debugging in Visual Studio (7 малоизвестных советов по отладке в Visual Studio)
- 7 hidden gems in Visual Studio (7 тайных сокровищ в Visual Studio)