Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Следующие функции C++ доступны в Visual Studio. Если не указано иное, все функции доступны во всех выпусках: Visual Studio Community, Visual Studio Professional и Visual Studio Enterprise. Некоторые функции требуют конкретных рабочих нагрузок или дополнительных компонентов, которые можно установить с помощью Visual Studio Installer.
В следующих таблицах показаны функции C++, доступные в Visual Studio 2017. Крестик в ячейке указывает, что компонент доступен. Пустая ячейка означает, что компонент недоступен. Примечания в скобках означают, что компонент доступен с ограничениями.
Платформы
- Классические приложения
- Универсальная платформа Windows (планшеты, ПК, Xbox, IoT и HoloLens)
- Linux
- Android
- iOS
Это важно
Начиная с Visual Studio 2026 (версии 18.0), разработка мобильных приложений с использованием C++ для iOS и Android, а также инструменты разработки для встроенных систем и Интернета вещей (просмотрщик RTOS, последовательный монитор, периферийный просмотрщик и импорт проекта ST), больше не поддерживаются и будут удалены в будущем обновлении. Пакеты NDK Android, включенные в разработку мобильных устройств с рабочей нагрузкой C++, остаются поддерживаемыми.
| Платформа | 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++
Это важно
Начиная с Visual Studio 2026 (версии 18.0), разработка мобильных приложений с использованием C++ для iOS и Android, а также инструменты разработки для встроенных систем и Интернета вещей (просмотрщик RTOS, последовательный монитор, периферийный просмотрщик и импорт проекта ST), больше не поддерживаются и будут удалены в будущем обновлении. Пакеты NDK Android, включенные в разработку мобильных устройств с рабочей нагрузкой 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)
- Undname.exe — инструмент для удаления декораций имени C++
- COFF/PE Dumper (Dumpbin.exe)
- Редактор COFF/PE (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 |
| Undname.exe — инструмент для удаления декораций имени C++ | X | X | X | X |
| Утилита COFF/PE Dumper (Dumpbin.exe) | X | X | X | X |
| Редактор COFF/PE (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-файлы)
- Редакторы ресурсов
- Редактор моделей
- Конструктор шейдеров
- Динамическая проверка зависимостей (только выпуск 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 | ||
| Редакторы ресурсов | 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