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 Phone 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)
- Łączność 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)
- Łączność 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)
- 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 Phone 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)
- Generator lib (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)
- Niekorzystający nazwa języka C++ (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 do konserwacji programu (Nmake.exe) | X | X | X | |
Generator lib (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 |
Niekorzystający nazwa języka C++ (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 |
Projektanci i redaktorzy
- XAML Designer
- Projektant stylów CSS/Edytor
- Projektant/edytor HTML
- 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 | |
Projektant stylów CSS/Edytor | X | X | X | X |
Projektant/edytor HTML | 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