Инструменты и функции 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