Инструменты и функции C++ в выпусках Visual Studio
Следующие функции C++ доступны в Visual Studio. Если не указано иное, все функции доступны во всех выпусках: Visual Studio Community, Visual Studio Professional и Visual Studio Enterprise. Некоторые функции требуют конкретных рабочих нагрузок или дополнительных компонентов, которые можно установить с помощью Visual Studio Installer.
В следующей таблице перечислены компоненты Visual C++, доступные в Visual Studio 2017. Крестик в ячейке указывает, что компонент доступен. Пустая ячейка означает, что компонент недоступен. Примечания в скобках означают, что компонент доступен с ограничениями.
Платформы
- Классические приложения
- Универсальная платформа Windows (планшеты, ПК, Xbox, IoT и HoloLens)
- Linux
- Android
- iOS
Платформа | Visual Studio Express для Windows 10 | Visual Studio Express для Windows Desktop | Visual Studio Community и Professional | Visual Studio Enterprise |
---|---|---|---|---|
Классические приложения | X | X | X | |
Универсальная платформа Windows (телефоны, планшеты, ПК, Xbox, IoT и HoloLens) | X | X | X | |
Linux | X | X | ||
Microsoft Store 8.1 | X | X | ||
Windows Phone 8.0 | X | X | ||
Android | X | X | ||
iOS | X | X |
Компиляторы
- 32-разрядный компилятор MSVC для x86, x 64, ARM и ARM64
- 64-разрядный компилятор MSVC для x86, x 64, ARM и ARM64
- Кросскомпилятор GCC для ARM
- Clang/LLVM
- В Windows Clang/LLVM 12.0 для x86 или x64 (поддержка только CMake).
- Любая установка Clang/LLVM поддерживается дистрибутивом Linux.
GNU C ++ | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
32-разрядный компилятор x86 MSVC | X | X | X | X |
Кросс-компилятор x86_arm | X | X | X | |
64-разрядный компилятор x64 MSVC | X | X | ||
Кросс-компилятор x86_x64 | X | X | X | X |
Рабочие нагрузки C++
Visual Studio включает в себя следующие рабочие нагрузки для разработок на C++. Вы можете установить любые или все из них, а также другие рабочие нагрузки, например разработка классических приложений .NET, разработка на Python, разработка для Azure, разработка расширений Visual Studio и другие.
"Разработка классических приложений на C++";
Включено:
- Базовые компоненты для классических приложений на C++
Необязательные компоненты:
- MSVC версии 143 — средства сборки C++ для VS 2022 для x64/x86 (последняя версия)
- Пакет SDK для Windows 10 (последняя версия для этой версии Visual Studio)
- JIT-отладчик
- Средства профилирования C++
- Средства CMake C++ для Windows
- ATL C++ для средств сборки версии 143 (x86 и x64)
- Адаптер теста для Boost.Test
- Адаптер тестов для Google Test
- Live Share
- IntelliCode
- C++ AddressSanitizer
- IntelliTrace (только в выпуске Enterprise)
- MSVC версии 143 — средства сборки C++ для VS 2022 для ARM64 (последняя версия)
- MFC C++ для средств сборки последней версии 143 (x86 и x64)
- Поддержка C++/CLI для средств сборки версии 143 (последняя версия)
- Модули C++ для средств сборки версии 143 (x64 или x86 — экспериментальная)
- Средства C++ Clang для Windows (12.0.0 — x64/x86)
- Диагностика JavaScript
- IncrediBuild — ускорение сборки
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- MSVC версии 142 — средства сборки C++ для VS 2019 для x64/x86 (версии 14.29)
- MSVC версии 141 — средства сборки C++ для VS 2017 для 64- или 32-разрядных систем (версия 14.16)
- MSVC версии 140 — средства сборки C++ VS 2015 (версия 14.00)
- MSVC версии 142 — средства сборки C++ для VS 2019 для x64/x86 (последняя версия)
- Пакет SDK для Windows 10 (последняя версия для этой версии Visual Studio)
- JIT-отладчик
- Средства профилирования C++
- Средства CMake C++ для Windows
- ATL C++ для средств сборки версии 142 (x86 и x64)
- Адаптер теста для Boost.Test
- Адаптер тестов для Google Test
- Live Share
- IntelliCode
- C++ AddressSanitizer
- IntelliTrace (только в выпуске Enterprise)
- MSVC версии 142 — средства сборки C++ для VS 2019 для ARM64 (последняя версия)
- MFC C++ для средств сборки последней версии 142 (x86 и x64)
- Поддержка C++/CLI для средств сборки версии 142 (последняя версия)
- Модули C++ для средств сборки версии 142 (x64 или x86 — экспериментальная)
- Средства C++ Clang для Windows
- Диагностика JavaScript
- IncrediBuild — ускорение сборки
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- MSVC версии 141 — средства сборки C++ для VS 2017 для 64- или 32-разрядных систем (версия 14.16)
- MSVC версии 140 — средства сборки C++ VS 2015 (версия 14.00)
Разработка для Linux на C++
Включено:
- Основные компоненты C++
- Разработка на C++ для Linux
Необязательные компоненты:
- Средства CMake C++ для Linux
- IntelliCode
- Средства разработки для встроенных платформ и Интернета вещей
"Разработка приложений для универсальной платформы Windows".
Включено:
- Blend для Visual Studio
- .NET Native и .NET Standard
- Диспетчер пакетов NuGet
- Средства универсальной платформы Windows
- Пакет SDK для Windows 10 (последняя версия для этой версии Visual Studio)
Необязательные компоненты:
- IntelliCode
- IntelliTrace (только в выпуске Enterprise)
- Подключение USB-устройств
- Средства универсальной платформы Windows для C++ (v143)
- Средства универсальной платформы Windows на C++ (версия 142)
- Средства универсальной платформы Windows для C++ (v141)
- Отладчик графики и профилировщик GPU для DirectX
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- Инструменты архитектуры и анализа
- IntelliCode
- IntelliTrace (только в выпуске Enterprise)
- Подключение USB-устройств
- Средства универсальной платформы Windows на C++ (версия 142)
- Средства универсальной платформы Windows для C++ (v141)
- Отладчик графики и профилировщик GPU для DirectX
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- Инструменты архитектуры и анализа
Разработка игр на C++
Включено:
- Основные компоненты C++
- Универсальная среда выполнения C для Windows
- Обновление для распространяемого компонента C++ 2019
- MSVC версии 143 — средства сборки C++ для VS 2022 для x64/x86 (последняя версия)
Необязательные компоненты:
- Средства профилирования C++
- C++ AddressSanitizer
- Пакет SDK для Windows 10 (последняя версия для этой версии Visual Studio)
- IntelliCode
- IntelliTrace (только в выпуске Enterprise)
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- IncrediBuild — ускорение сборки
- Cocos
- Установщик Unreal Engine
- Поддержка IDE Android для Unreal Engine
- Основные компоненты C++
- Универсальная среда выполнения C для Windows
- Обновление для распространяемого компонента C++ 2019
- MSVC версии 142 — средства сборки C++ для VS 2019 для x64/x86 (последняя версия)
Необязательные компоненты:
- Средства профилирования C++
- Пакет SDK для Windows 10 (последняя версия для этой версии Visual Studio)
- IntelliCode
- IntelliTrace (только в выпуске Enterprise)
- Пакет SDK для Windows 11
- Пакет SDK для Windows 10 (другие версии)
- IncrediBuild — ускорение сборки
- Cocos
- Установщик Unreal Engine
- Поддержка IDE Android для Unreal Engine
Разработка мобильных приложений на языке C++
Включено:
- Основные компоненты C++
- Установка пакета SDK для Android (уровень API 25) (локальная установка для разработки мобильных приложений на C++)
Необязательные компоненты:
- NDK для Android (R21E)
- Apache Ant (1.9.3)
- Средства разработки на C++ для Android
- IntelliCode
- Intel Hardware Accelerated Execution Manager (HAXM), локальная установка
- Средства разработки C++ для iOS
- IncrediBuild — ускорение сборки
- NDK для Android (R16B)
- Apache Ant (1.9.3)
- Средства разработки на C++ для Android
- IntelliCode
- Google Android Emulator (уровень API 25), локальная установка
- Intel Hardware Accelerated Execution Manager (HAXM), локальная установка
- NDK для Android (R16B) (32-разрядный)
- Средства разработки C++ для iOS
- IncrediBuild — ускорение сборки
Отдельные компоненты
Эти компоненты можно установить независимо друг от друга из любой рабочей нагрузки.
- Диагностика JavaScript
- Live Share
- Среда выполнения универсальной платформы Windows C++ для средств сборки версии 142
- Компонент для публикации ClickOnce
- Проекты Microsoft Visual Studio Installer
- Пакет Windows SDK
Библиотеки и заголовки
- Заголовки и библиотеки Windows
- Универсальная среда выполнения C для Windows (CRT)
- стандартная библиотека C++
- ATL
- MFC
- Библиотека классов .NET Framework
- Библиотека поддержки C++ для .NET
- OpenMP 2.0
- Более 900 библиотек с открытым кодом через каталог vcpkg
Библиотека или заголовок | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Заголовки и библиотеки Windows; библиотека CRT | (X) | X | X | X |
стандартная библиотека C++ | X | X | X | X |
ATL | X | X | ||
MFC | X | X | ||
Библиотека классов .NET Framework | X | X | X | |
Библиотека поддержки C++ для .NET | X | X | X | |
OpenMP 2.0 | X | X | X | X |
Системы сборки и проектов
- CMake.
- Любая система сборки через параметр "Открыть папку"
- Построение с помощью командной строки (msbuild.exe)
- Собственное многоплатформенное нацеливание
- Управляемое многоплатформенное нацеливание
- Параллельное построение
- Настройки сборки
- Расширяемость страниц свойств
Функция сборки или проекта | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Построение с помощью командной строки (msbuild.exe) | X | X | X | X |
Собственное многоплатформенное нацеливание | X | X | X | |
Управляемое многоплатформенное нацеливание | X | X | X | |
Параллельное построение | X | X | X | X |
Настройки сборки | X | X | X | X |
Расширяемость страниц свойств | X | X | X | X |
Шаблоны проектов
Указанные ниже шаблоны проектов доступны в зависимости от того, какие рабочие нагрузки установлены.
Классическое приложение Windows:
- Пустой проект
- Консольное приложение
- Мастер классических приложений Windows
- Классическое приложение для Windows
- Проект общих элементов
- Приложение MFC
- Библиотека динамической компоновки
- Пустой проект CLR
- Консольное приложение CLR
- Статическая библиотека
- Проект CMake
- Проект ATL
- Библиотека динамической компоновки MFC
- Библиотека классов CLR
- Проект Makefile (Windows)
- MFC ActiveXControl
- Проект машинного модульного теста
- Google Test
Универсальная платформа Windows (C++/CX):
- Пустое приложение
- Приложение DirectX 11 и XAML
- Приложение DirectX 11
- Приложение DirectX 12
- Приложение модульных тестов
- DLL-библиотеки
- Компонент среды выполнения Windows
- Статическая библиотека
- Проект упаковки приложений Windows
Linux:
- Консольное приложение (Linux)
- Пустой проект (Linux)
- Raspberry Pi Blink
- Проект Makefile (Linux)
Template | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Шаблоны XAML для UWP, Windows 8.1, Windows Phone 8.0 | X | X | X | |
Приложение Direct3D | X | X | X | |
Библиотека DLL (универсальные приложения для Windows) | X | X | X | |
Статическая библиотека (универсальные приложения для Windows) | X | X | X | |
Компонент среды выполнения Windows | X | X | X | |
Приложение модульного тестирования (универсальное приложение Windows) | X | X | X | |
Проект ATL | X | X | ||
Библиотека классов (CLR) | X | X | X | |
Консольное приложение CLR | X | X | X | |
Пустой проект CLR | X | X | X | |
Специальный мастер | X | X | ||
Пустой проект | X | X | X | |
Проект, использующий файл makefile | X | X | X | |
Элемент управления ActiveX библиотеки MFC | X | X | ||
Приложение MFC | X | X | ||
Библиотека DLL MFC | X | X | ||
Тестовый проект | X | X | X | X |
Консольное приложение Win32 | X | X | X | |
Проект Win32 | X | X | X |
Инструменты
- Инкрементный компоновщик (Link.exe)
- Служебная программа Microsoft Makefile (Nmake.exe)
- Генератор библиотек (Lib.exe)
- Компилятор ресурсов Windows (Rc.exe)
- Конвертер ресурсов Windows в объекты (CvtRes.exe)
- Служебная программа Browse Information Maintenance (BscMake.exe)
- C++ Name Undecorator (Undname.exe)
- COFF/PE Dumper (Dumpbin.exe)
- COFF/PE Editor (Editbin.exe)
- MASM (Ml.exe)
- Spy++
- ErrLook
- AtlTrace
- Правила вывода
- Оптимизация с использованием профиля
Средство | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Инкрементный компоновщик (Link.exe) | X | X | X | X |
Служебная программа обслуживания программ (Nmake.exe) | X | X | X | |
Генератор библиотек (Lib.exe) | X | X | X | X |
Компилятор ресурсов Windows (Rc.exe) | X | X | X | X |
Конвертер ресурсов Windows в объекты (CvtRes.exe) | X | X | X | |
Служебная программа Browse Information Maintenance (BscMake.exe) | X | X | X | X |
C++ Name Undecorator (Undname.exe) | X | X | X | X |
COFF/PE Dumper (Dumpbin.exe) | X | X | X | X |
COFF/PE Editor (Editbin.exe) | X | X | X | X |
MASM (Ml.exe) | X | X | ||
Spy++ | X | X | ||
ErrLook | X | X | ||
AtlTrace | X | X | ||
Devenv.com | X | X | ||
Правила вывода | X | X | ||
Обновление проектов VCBuild с расширением VCPROJ до MSBuild (VCUpgrade.exe) | X | X | X | X |
Оптимизация с использованием профиля | X | X |
Средства отладки
- Отладка машинного кода
- natvis (визуализация собственного типа)
- Отладка графики
- Отладка управляемого кода
- Использование GPU
- Использование памяти
- Удаленная отладка
- Отладка SQL
- Статический анализ кода
Средство отладки | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Отладка машинного кода | X | X | X | X |
natvis (визуализация собственного типа) | X | X | X | X |
Отладка графики | X | X | X | |
Отладка управляемого кода | X | X | X | |
Использование GPU | X | X | X | |
Использование памяти | X | X | X | |
Удаленная отладка | X | X | X | X |
Отладка SQL | X | X | ||
Статический анализ кода | Ограниченный | Ограниченный | X | X |
Редакторы и конструкторы
- Конструктор XAML
- Конструктор и редактор стилей CSS
- Конструктор и редактор HTML
- Редактор XML
- Редактор исходного кода
- Функции повышения производительности: рефакторинг, подсистема IntelliSense EDG, форматирование кода C++
- Конструктор Windows Forms
- Конструктор данных
- Собственный редактор ресурсов (RC-файлы)
- Resource Editors
- Редактор моделей
- Конструктор шейдеров
- Динамическая проверка зависимостей (только выпуск Enterprise)
- Диаграммы архитектурного уровня (только выпуск Enterprise)
- Проверка архитектуры (только выпуск Enterprise)
- Клонирование кода (только выпуск Enterprise)
Редактор или конструктор | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Конструктор XAML | X | X | X | |
Конструктор и редактор стилей CSS | X | X | X | X |
Конструктор и редактор HTML | X | X | X | X |
Редактор XML | X | X | X | X |
Редактор исходного кода | X | X | X | X |
Возможности повышения производительности: рефакторинг, IntelliSense, форматирование кода C++ | X | X | X | X |
Конструктор Windows Forms | X | X | X | |
Конструктор данных | X | X | ||
Собственный редактор ресурсов (RC-файлы) | X | X | ||
Resource Editors | X | X | X | X |
Редактор моделей | X | X | X | |
Конструктор шейдеров | X | X | X |
Средства работы с данными
- Конструктор данных
- Объекты данных
- Веб-службы
- Обозреватель сервера
Средство работы с данными | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Конструктор данных | X | X | ||
Объекты данных | X | X | ||
Веб-службы | X | X | ||
Обозреватель сервера | X | X |
Автоматизация и расширяемость
- Объектные модели расширения среды
- Модель кода
- модель проекта
- Модель редактора ресурсов
- Модель мастера
- Объектная модель отладчика
Автоматизация и расширяемость | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Объектные модели расширения среды | X | X | ||
Модель кода | X | X | ||
модель проекта | X | X | ||
Модель редактора ресурсов | X | X | ||
Модель мастера | X | X | ||
Объектная модель отладчика | X | X |
Средства управления жизненным циклом приложения
- Модульное тестирование (Microsoft Native C++, Boost.Test, Google Test, CTest)
- Карта кода и диаграммы зависимостей (Professional и Enterprise)
- Покрытие кода (только Enterprise)
- Ручное тестирование (только Enterprise)
- Произвольное тестирование (только Enterprise)
- Управление тестовыми случаями (только Enterprise)
- Интеграция отладчика карты кода (только Enterprise)
- Live Unit Testing (только Enterprise)
- IntelliTrace (только в выпуске Enterprise)
- IntelliTest (только Enterprise)
- Microsoft Fakes (изоляция модульных тестов) (только Enterprise)
- Покрытие кода (только Enterprise)
Средство | Visual Studio Express для Windows | Visual Studio Express для Windows Desktop | Visual Studio Professional и Community | Visual Studio Enterprise |
---|---|---|---|---|
Модульное тестирование (собственная платформа) | X | X | X | X |
Модульное тестирование (управляемая платформа) | X | X | X | |
Покрытие кода | X | |||
Тестирование вручную | X | |||
Произвольное тестирование | X | |||
Управление тестовыми случаями | X | |||
Карта кода и диаграммы зависимостей | только для чтения | X | ||
Отладка карты кода | X |
См. также
Установка Visual Studio
Новые возможности Visual Studio
Типы проектов C++ в Visual Studio