Narzędzia i funkcje języka C++ w wersjach programu Visual Studio

Następujące funkcje języka C++ są dostępne w programie Visual Studio. O ile nie określono inaczej, wszystkie funkcje są dostępne we wszystkich wersjach: Visual Studio Community, Visual Studio Professional i Visual Studio Enterprise. Niektóre funkcje wymagają określonych obciążeń lub opcjonalnych składników, które można zainstalować za pomocą Instalator programu Visual Studio.

W poniższych tabelach przedstawiono funkcje języka Visual C++, które są dostępne w programie Visual Studio 2017. Znak X w komórce wskazuje, że funkcja jest dostępna; pusta komórka wskazuje, że funkcja jest niedostępna. Uwagi w nawiasach wskazują, że funkcja jest dostępna, ale ograniczona.

Platformy

  • Pulpit systemu Windows
  • platforma uniwersalna systemu Windows (tablet, pc, Xbox, IoT i HoloLens))
  • Linux
  • Android
  • iOS
Platforma Visual Studio Express dla systemu Windows 10 Visual Studio Express for Windows Desktop Visual Studio Community/Professional Visual Studio Enterprise
Pulpit systemu Windows X X X
platforma uniwersalna systemu Windows (telefon, tablet, pc, Xbox, IoT i HoloLens)) X X X
Linux X X
Microsoft Store 8.1 X X
Windows Telefon 8.0 X X
Android X X
iOS X X

Kompilatory

  • Kompilator 32-bitowy MSVC dla x86, x64, ARM i ARM64
  • Kompilator 64-bitowy MSVC dla x86, x64, ARM i ARM64
  • Kompilator między kompilatorem GCC dla usługi ARM
  • Clang/LLVM
    • W systemie Windows język Clang/LLVM 12.0 przeznaczony dla platformy x86 lub x64 (tylko obsługa narzędzia CMake).
    • W systemie Linux dowolna instalacja Clang/LLVM obsługiwana przez dystrybucję.
Compiler Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Kompilator X86 MSVC 32-bitowy X X X X
x86_arm kompilatora krzyżowego X X X
Kompilator X64-bitowy MSVC X X
x86_x64 kompilator między kompilatorami X X X X

Obciążenia języka C++

Program Visual Studio obejmuje następujące obciążenia dla programowania w języku C++. Można zainstalować dowolne lub wszystkie z nich wraz z innymi obciążeniami, takimi jak Programowanie aplikacji klasycznych platformy .NET, programowanie w języku Python, programowanie na platformie Azure, programowanie rozszerzeń programu Visual Studio i inne.

Programowanie aplikacji klasycznych w języku C++

Zawarte:

  • Podstawowe funkcje klasyczne języka C++

Składniki opcjonalne:

  • MSVC v143 — VS 2022 C++ x64/x86 build tools (najnowsza wersja)
  • Windows 10 SDK (najnowsza wersja tego programu Visual Studio)
  • Debuger just in time
  • Narzędzia profilowania języka C++
  • C++ CMake tools for Windows
  • C++ ATL dla narzędzi kompilacji w wersji 143 (x86 i x64)
  • Adapter testowy dla aplikacji Boost.Test
  • Adapter testowy dla usługi Google Test
  • Live Share
  • IntelliCode
  • C++ AddressSanitizer
  • IntelliTrace (tylko przedsiębiorstwo)
  • MSVC v143 — VS 2022 C++ ARM64 build tools (najnowsza wersja)
  • C++ MFC dla najnowszych narzędzi kompilacji w wersji 143 (x86 i x64)
  • Obsługa języka C++/interfejsu wiersza polecenia dla narzędzi kompilacji w wersji 143 (najnowsza wersja)
  • Moduły języka C++ dla narzędzi kompilacji w wersji 143 (x64/x86 — eksperymentalne)
  • Narzędzia C++ Clang dla systemu Windows (12.0.0 — x64/x86)
  • Diagnostyka języka JavaScript
  • IncrediBuild — przyspieszanie kompilacji
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • MSVC w wersji 142 — VS 2019 C++ x64/x86 build tools (wersja 14.29)
  • MSVC w wersji 141 — NARZĘDZIA kompilacji programu VS 2017 C++ x64/x86 (wersja 14.16)
  • MSVC v140 — narzędzia kompilacji programu VS 2015 C++ (wersja 14.00)
  • MSVC v142 — VS 2019 C++ x64/x86 build tools (najnowsza wersja)
  • Windows 10 SDK (najnowsza wersja tego programu Visual Studio)
  • Debuger just in time
  • Narzędzia profilowania języka C++
  • C++ CMake tools for Windows
  • C++ ATL for v142 build tools (x86 i x64)
  • Adapter testowy dla aplikacji Boost.Test
  • Adapter testowy dla usługi Google Test
  • Live Share
  • IntelliCode
  • C++ AddressSanitizer
  • IntelliTrace (tylko przedsiębiorstwo)
  • MSVC v142 — VS 2019 C++ ARM64 build tools (najnowsza wersja)
  • C++ MFC dla najnowszych narzędzi kompilacji w wersji 142 (x86 i x64)
  • Obsługa języka C++/interfejsu wiersza polecenia dla narzędzi kompilacji w wersji 142 (najnowsza wersja)
  • Moduły języka C++ dla narzędzi kompilacji w wersji 142 (x64/x86 — eksperymentalne)
  • Narzędzia C++ Clang dla systemu Windows
  • Diagnostyka języka JavaScript
  • IncrediBuild — przyspieszanie kompilacji
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • MSVC w wersji 141 — NARZĘDZIA kompilacji programu VS 2017 C++ x64/x86 (wersja 14.16)
  • MSVC v140 — narzędzia kompilacji programu VS 2015 C++ (wersja 14.00)

Programowanie dla systemu Linux w języku C++

Zawarte:

  • Podstawowe funkcje języka C++
  • C++ for Linux Development

Składniki opcjonalne:

  • Narzędzia CMake języka C++ dla systemu Linux
  • IntelliCode
  • Narzędzia deweloperskie osadzone i IoT

Tworzenie aplikacji dla platformy uniwersalnej systemu Windows

Zawarte:

  • Blend for Visual Studio
  • .NET Native i .NET Standard
  • Menedżer pakietów NuGet
  • narzędzia platforma uniwersalna systemu Windows
  • Windows 10 SDK (najnowsza wersja tego programu Visual Studio)

Składniki opcjonalne:

  • IntelliCode
  • IntelliTrace (tylko przedsiębiorstwo)
  • Połączenie ivity urządzenia USB
  • Narzędzia platforma uniwersalna systemu Windows języka C++ (wersja 143)
  • Narzędzia platforma uniwersalna systemu Windows języka C++ (wersja 142)
  • Narzędzia platforma uniwersalna systemu Windows języka C++ (wersja 141)
  • Debuger grafiki i profiler procesora GPU dla directX
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • Narzędzia do analizy i architektury
  • IntelliCode
  • IntelliTrace (tylko przedsiębiorstwo)
  • Połączenie ivity urządzenia USB
  • Narzędzia platforma uniwersalna systemu Windows języka C++ (wersja 142)
  • Narzędzia platforma uniwersalna systemu Windows języka C++ (wersja 141)
  • Debuger grafiki i profiler procesora GPU dla directX
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • Narzędzia do analizy i architektury

Programowanie gier w języku C++

Zawarte:

  • Podstawowe funkcje języka C++
  • Uniwersalne środowisko uruchomieniowe języka C systemu Windows
  • Aktualizacja redystrybucyjna języka C++ 2019
  • MSVC v143 — VS 2022 C++ x64/x86 build tools (najnowsza wersja)

Składniki opcjonalne:

  • Narzędzia profilowania języka C++
  • C++ AddressSanitizer
  • Windows 10 SDK (najnowsza wersja tego programu Visual Studio)
  • IntelliCode
  • IntelliTrace (tylko przedsiębiorstwo)
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • IncrediBuild — przyspieszanie kompilacji
  • Cocos
  • Instalator unreal engine
  • Obsługa środowiska IDE systemu Android dla aparatu Unreal
  • Podstawowe funkcje języka C++
  • Uniwersalne środowisko uruchomieniowe języka C systemu Windows
  • Aktualizacja redystrybucyjna języka C++ 2019
  • MSVC v142 — VS 2019 C++ x64/x86 build tools (najnowsza wersja)

Składniki opcjonalne:

  • Narzędzia profilowania języka C++
  • Windows 10 SDK (najnowsza wersja tego programu Visual Studio)
  • IntelliCode
  • IntelliTrace (tylko przedsiębiorstwo)
  • Windows 11 SDK
  • Windows 10 SDK (inne wersje)
  • IncrediBuild — przyspieszanie kompilacji
  • Cocos
  • Instalator unreal engine
  • Obsługa środowiska IDE systemu Android dla aparatu Unreal

Tworzenie aplikacji mobilnych w języku C++

Zawarte:

  • Podstawowe funkcje języka C++
  • Konfiguracja zestawu Android SDK (poziom 25 interfejsu API) (lokalna instalacja na potrzeby programowania aplikacji mobilnych w języku C++)

Składniki opcjonalne:

  • Android NDK (R21E)
  • Apache Ant (1.9.3)
  • Narzędzia programistyczne dla systemu Android w języku C++
  • IntelliCode
  • Intel Hardware Accelerated Execution Manager (HAXM) (instalacja lokalna)
  • Narzędzia programistyczne dla systemu iOS w języku C++
  • IncrediBuild — przyspieszanie kompilacji
  • Android NDK (R16B)
  • Apache Ant (1.9.3)
  • Narzędzia programistyczne dla systemu Android w języku C++
  • IntelliCode
  • Emulator systemu Google Android (poziom 25 interfejsu API) (instalacja lokalna)
  • Intel Hardware Accelerated Execution Manager (HAXM) (instalacja lokalna)
  • Android NDK (R16B) (32bit)
  • Narzędzia programistyczne dla systemu iOS w języku C++
  • IncrediBuild — przyspieszanie kompilacji

Poszczególne składniki

Te składniki można zainstalować niezależnie od dowolnego obciążenia.

  • Diagnostyka języka JavaScript
  • Live Share
  • Środowisko uruchomieniowe platforma uniwersalna systemu Windows języka C++ dla narzędzi kompilacji w wersji 142
  • Publikowanie technologii ClickOnce
  • Projekty microsoft Instalator programu Visual Studio
  • Zestaw SDK systemu Windows

Biblioteki i nagłówki

  • Nagłówki i biblioteki systemu Windows
  • Uniwersalne środowisko uruchomieniowe C systemu Windows (CRT)
  • Standardowa biblioteka C++
  • ATL
  • MFC
  • Biblioteka klas programu .NET Framework
  • Biblioteka obsługi języka C++ dla platformy .NET
  • OpenMP 2.0
  • Ponad 900 bibliotek typu open source za pośrednictwem katalogu vcpkg
Biblioteka lub nagłówek Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Nagłówki i biblioteki systemu Windows oraz biblioteka CRT (X) X X X
Standardowa biblioteka C++ X X X X
ATL X X
MFC X X
Biblioteka klas programu .NET Framework X X X
Biblioteka obsługi języka C++ dla platformy .NET X X X
OpenMP 2.0 X X X X

Kompilowanie i systemy projektów

  • CMake
  • Dowolny system kompilacji za pośrednictwem programu Open Folder
  • Kompilacje wiersza polecenia (msbuild.exe)
  • Natywna wielowersyjność
  • Zarządzane wielowersyjność
  • Kompilacje równoległe
  • Dostosowania kompilacji
  • Rozszerzalność stron właściwości
Funkcja kompilacji lub projektu Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Kompilacje wiersza polecenia (msbuild.exe) X X X X
Natywna wielowersyjność X X X
Zarządzane wielowersyjność X X X
Kompilacje równoległe X X X X
Dostosowania kompilacji X X X X
Rozszerzalność stron właściwości X X X X

Szablony projektów

Następujące szablony projektów są dostępne w zależności od zainstalowanych obciążeń.

Windows Desktop:

  • Pusty projekt
  • Aplikacja konsolowa
  • Kreator aplikacji klasycznej systemu Windows
  • Aplikacja klasyczna systemu Windows
  • Projekt elementów udostępnionych
  • Aplikacja MFC
  • Biblioteka linków dynamicznych
  • Pusty projekt CLR
  • Aplikacja konsoli ŚRODOWISKA CLR
  • Biblioteka statyczna
  • Projekt CMake
  • Projekt ATL
  • Biblioteka linków dynamicznych MFC
  • Biblioteka klas CLR
  • Projekt pliku programu Make (Windows)
  • MFC ActiveXControl
  • Projekt natywnego testu jednostkowego
  • Google Test

platforma uniwersalna systemu Windows (C++/CX):

  • Pusta aplikacja
  • Aplikacja DirectX 11 i XAML
  • Aplikacja DirectX 11
  • Aplikacja DirectX 12
  • Aplikacja testowa jednostkowa
  • DLL
  • Składnik środowiska wykonawczego systemu Windows
  • Biblioteka statyczna
  • Projekt pakietu aplikacji systemu Windows

Linux:

  • Aplikacja konsolowa (Linux)
  • Pusty projekt (Linux)
  • Miganie urządzenia Raspberry Pi
  • Projekt pliku programu Make (Linux)
Template Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Szablony XAML dla platformy UWP, Windows 8.1, Windows Telefon 8.0 X X X
Aplikacja Direct3D X X X
DLL (uniwersalny system Windows) X X X
Biblioteka statyczna (uniwersalny system Windows) X X X
Składnik środowiska wykonawczego systemu Windows X X X
Aplikacja testowa jednostkowa (uniwersalny system Windows) X X X
Projekt ATL X X
Biblioteka klas (CLR) X X X
Aplikacja konsolowa CLR X X X
Pusty projekt CLR X X X
Kreator niestandardowy X X
Pusty projekt X X X
Projekt pliku programu Make X X X
Kontrolka ActiveX MFC X X
Aplikacja MFC X X
MFC DLL X X
Projekt testowy X X X X
Aplikacja konsolowa Win32 X X X
Projekt Win32 X X X

Narzędzia

  • Konsolidator przyrostowy (Link.exe)
  • Microsoft Makefile Utility (Nmake.exe)
  • Lib Generator (Lib.exe)
  • Kompilator zasobów systemu Windows (Rc.exe)
  • Konwerter zasobów systemu Windows do obiektu (CvtRes.exe)
  • Przeglądaj narzędzie do konserwacji informacji (BscMake.exe)
  • C++ Name Undecorator (Undname.exe)
  • COFF/PE Dumper (Dumpbin.exe)
  • EDYTOR COFF/PE (Editbin.exe)
  • MASM (Ml.exe)
  • Spy++
  • Errlook
  • AtlTrace
  • Zasady wnioskowania
  • Optymalizacje z przewodnikiem profilu
Narzędzie Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Konsolidator przyrostowy (Link.exe) X X X X
Narzędzie konserwacji programu (Nmake.exe) X X X
Lib Generator (Lib.exe) X X X X
Kompilator zasobów systemu Windows (Rc.exe) X X X X
Konwerter zasobów systemu Windows do obiektu (CvtRes.exe) X X X
Przeglądaj narzędzie do konserwacji informacji (BscMake.exe) X X X X
C++ Name Undecorator (Undname.exe) X X X X
COFF/PE Dumper (Dumpbin.exe) X X X X
EDYTOR 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
Zasady wnioskowania X X
Uaktualnianie projektów VCBuild .vcproj do programu MSBuild (VCUpgrade.exe) X X X X
Optymalizacje z przewodnikiem profilu X X

Funkcje debugowania

  • Debugowanie natywne
  • natvis (wizualizacja typu natywnego)
  • Debugowanie grafiki
  • Debugowanie zarządzane
  • Użycie procesora GPU
  • Użycie pamięci
  • Debugowanie zdalne
  • Debugowanie SQL
  • Analiza kodu statycznego
Funkcja debugowania Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Debugowanie natywne X X X X
natvis (wizualizacja typu natywnego) X X X X
Debugowanie grafiki X X X
Debugowanie zarządzane X X X
Użycie procesora GPU X X X
Użycie pamięci X X X
Debugowanie zdalne X X X X
Debugowanie SQL X X
Analiza kodu statycznego Ograniczony Ograniczony X X

Projektant i edytory

  • XAML Designer
  • Styl CSS Projektant/Edytor
  • Projektant HTML/Edytor
  • Edytor XML
  • Edytor kodu źródłowego
  • Funkcje produktywności: refaktoryzacja, aparat intelliSense EDG, formatowanie kodu C++
  • Projektant Windows Forms
  • Projektant danych
  • Natywny edytor zasobów (pliki rc)
  • Edytory zasobów
  • Edytor modelu
  • Projektant cieniowania
  • Walidacja zależności na żywo (tylko przedsiębiorstwo)
  • Diagramy warstw architektury (tylko dla przedsiębiorstw)
  • Weryfikacja architektury (tylko przedsiębiorstwo)
  • Klonowanie kodu (tylko przedsiębiorstwo)
Projektant lub Edytor Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
XAML Designer X X X
Styl CSS Projektant/Edytor X X X X
Projektant HTML/Edytor X X X X
Edytor XML X X X X
Edytor kodu źródłowego X X X X
Funkcje produktywności: refaktoryzacja, IntelliSense, formatowanie kodu C++ X X X X
Projektant Windows Forms X X X
Projektant danych X X
Natywny edytor zasobów (pliki rc) X X
Edytory zasobów X X X X
Edytor modelu X X X
Projektant cieniowania X X X

Funkcje danych

  • Projektant danych
  • Obiekty danych
  • Usługi sieci Web
  • Eksplorator serwera
Funkcja danych Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Projektant danych X X
Obiekty danych X X
Usługi sieci Web X X
Eksplorator serwera X X

Automatyzacja i rozszerzalność

  • Modele obiektów rozszerzalności
  • Model kodu
  • Model projektu
  • Model edytora zasobów
  • Model kreatora
  • Model obiektów debugera
Automatyzacja i rozszerzalność Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Modele obiektów rozszerzalności X X
Model kodu X X
Model projektu X X
Model edytora zasobów X X
Model kreatora X X
Model obiektów debugera X X

Narzędzia do zarządzania cyklem życia aplikacji

  • Testowanie jednostkowe (Microsoft Native C++, Boost.Test, Google Test, CTest)
  • Wykresy mapy kodu i zależności (Professional i Enterprise)
  • Pokrycie kodu (tylko przedsiębiorstwo)
  • Testowanie ręczne (tylko dla przedsiębiorstw)
  • Testowanie eksploracyjne (tylko enterprise)
  • Zarządzanie przypadkami testowymi (tylko dla przedsiębiorstw)
  • Integracja debugera mapy kodu (tylko dla przedsiębiorstw)
  • Live Unit Testing (tylko enterprise)
  • IntelliTrace (tylko przedsiębiorstwo)
  • IntelliTest (tylko enterprise)
  • Microsoft Fakes (izolacja testów jednostkowych) (tylko przedsiębiorstwo)
  • Pokrycie kodu (tylko przedsiębiorstwo)
Narzędzie Visual Studio Express dla systemu Windows Visual Studio Express for Windows Desktop Visual Studio Professional /Community Visual Studio Enterprise
Testowanie jednostkowe (platforma natywna) X X X X
Testowanie jednostkowe (platforma zarządzana) X X X
Pokrycie kodu X
Testowanie ręczne X
Testowanie eksploracyjne X
Zarządzanie przypadkami testowymi X
Mapa kodu i wykresy zależności tylko do odczytu X
Debugowanie mapy kodu X

Zobacz też

Instalacja programu Visual Studio
Co nowego w programie Visual Studio
Typy projektów języka C++ w programie Visual Studio