Einführung in Microsoft C++ für UNIX-BenutzerIntroduction to Microsoft C++ for UNIX Users

Dieses Thema enthält Informationen für Benutzer aller UNIX-UNIX-Versionen, die mit Visual Studio noch nicht vertraut sind und sich C++ entweder über die Befehlszeile oder mithilfe von Visual Studio produktiv einsetzen möchten.This topic provides information for users of all flavors of UNIX who are new to Visual Studio and want to become productive with C++ either from the command line or by using Visual Studio. Mithilfe von Visual Studio mit dem Microsoft C++ -Compiler können Sie Windows als Ziel verwenden.You can use Visual Studio with the Microsoft C++ compiler to target Windows. Sie können auch die Visual Studio-IDE mit gcc oder clang in UNIX-Umgebungen verwenden, wie z. b. Linux-Remote Computern, MinGW-W64 und Windows-Subsystem für Linux.You can also use the Visual Studio IDE with GCC or Clang in UNIX environments such as remote Linux machines, MinGW-w64, and Windows Subsystem for Linux. Um in C++ Visual Studio verwenden zu können, muss die Desktop Entwicklung mit C++ Arbeitsauslastung installiert sein.To use C++ in Visual Studio, the Desktop Development with C++ workload must be installed. Öffnen Sie die Visual Studio-Installer, um die Arbeitsauslastung zu installieren oder optionale Komponenten hinzuzufügen oder zu entfernen.Open the Visual Studio Installer to install the workload or add or remove optional components. Installieren Sie auch die Linux- C++ Entwicklung mit der Arbeitsauslastung, wenn Sie einen Linux-Remote Computer als Ziel haben.Also install the Linux Development with C++ workload if you'll be targeting a remote Linux machine. Installieren Sie bei der Android-oder IOS-Entwicklung die Mobile-Entwicklung mit C++ der Arbeitsauslastung.For Android or iOS development, install the Mobile Development with C++ workload.

Ersten Einstieg in der BefehlszeileGetting started on the command line

Sie können den Microsoft C++ -Compiler von der Befehlszeile aus auf ähnliche Weise wie eine UNIX-Befehlszeilen Umgebung verwenden.You can use the Microsoft C++ compiler from the command line in a similar way that you would use a UNIX command-line environment. Die Kompilierung erfolgt mithilfe der Eingabeaufforderung mit dem C/C++-Befehlszeilencompiler (CL.EXE), dem Linker (LINK.EXE) und weiteren Tools, darunter NMAKE.EXE, der Microsoft-Version des UNIX-Dienstprogramms Make.You compile from the command prompt by using the command-line C and C++ compiler (CL.EXE), linker (LINK.EXE), and other tools, including NMAKE.EXE, the Microsoft version of the UNIX make utility.

Unter UNIX werden Befehle in einem gemeinsam genutzten Ordner, z. B. /usr/bin, installiert.In UNIX, commands are installed in a common folder, such as /usr/bin. In Visual Studio werden die Befehlszeilentools in Ihrem Visual Studio-Installationsverzeichnis im Unterverzeichnis „VC\bin“ und seinen Unterverzeichnissen installiert.In Visual Studio, the command-line tools are installed in your Visual Studio installation directory in the VC\bin subdirectory and its subdirectories. Im Gegensatz zu UNIX sind diese Tools nicht in einem einfachen Eingabeaufforderungsfenster verfügbar.Unlike UNIX, these tools are not available in a plain command prompt window. Um die Befehlszeilen Tools verwenden zu können, müssen Sie eine spezielle Entwickler Eingabeaufforderung verwenden, mit der der Pfad und andere Umgebungsvariablen eingerichtet werden, die C++ zum Kompilieren von Programmen benötigt werden.To use the command-line tools, you must use a special developer command prompt that sets up the path and other environment variables that are necessary to compile C++ programs. Weitere Informationen finden Sie unter Erstellen von C/C++-Code über die Befehlszeile und unter Exemplarische Vorgehensweise: Kompilieren eines nativen C++-Programms in der Befehlszeile.For more information, see Build C/C++ code on the command line and Walkthrough: Compiling a Native C++ Program on the Command Line.

Debuggen von CodeDebugging your code

Sie können den Visual Studio-Debugger für Microsoft C++ -Projekte über die Befehlszeile oder innerhalb der IDE verwenden.You can use the Visual Studio debugger for Microsoft C++ projects from the command line, or from within the IDE. Kompilieren Sie mit dem Schalter /Z7,/Zi,/Zi (Debug Information Format) , um das Durchlaufen von Quellen zu ermöglichen.Compile with the /Z7, /Zi, /ZI (Debug Information Format) switch to enable stepping through sources. Weitere Informationen finden Sie unter Debuggen von nativem Code und Verwenden der Visual Studio-IDE für C++-Desktopentwicklung.For more information, see Debugging Native Code and Using the Visual Studio IDE for C++ Desktop Development.

Bei Programmen, die mit gcc oder clang kompiliert werden, ruft Visual Studio gdb, lldb oder den von Ihnen angegebenen benutzerdefinierten Debugger auf.For programs compiled with GCC or Clang, Visual Studio invokes GDB, LLDB, or whatever custom debugger you specify.

Visual Studio-Projekt SystemVisual Studio project system

Das Visual Studio-Projekt System heißt MSBuild.The Visual Studio project system is called MSBuild. Sie verwendet Projektdateien im XML-Format. C++ Projektdateien haben die Erweiterung ". vcxproj".It uses project files in XML format; C++ project files have the extension .vcxproj. Eine Anwendung, die aus mehreren Bibliotheken und ausführbaren Dateien besteht, von denen möglicherweise jede mit einem anderen Satz von Compileroptionen oder sogar in einer anderen Sprache erstellt wurde, wird in mehreren Projekten gespeichert, die Teil einer einzigen Projektmappe sind.An application that consists of multiple libraries and executables, each potentially built with a different set of compiler options or even in a different language, are stored in multiple projects that are part of a single solution. Eine Projektmappe stellt einen abstrakten Container dar, der zur Gruppierung mehrerer Projekte dient.A solution is an abstraction for a container to group multiple projects together. Informationen über Projektmappen werden in einer Projektmappendatei mit der Erweiterung SLN gespeichert.Information about solutions is stored in a solution file with the extension .sln. Weitere Informationen finden Sie unter Projektmappen und Projekte in Visual Studio und unter Verwenden der Visual Studio-IDE für C++-Desktopentwicklung.For more information, see Solutions and Projects in Visual Studio and Using the Visual Studio IDE for C++ Desktop Development. Wählen Sie im Hauptmenü Datei > neue > Projekt aus, um die verfügbaren Visual Studio-Projektvorlagen anzuzeigen.From the main menu, choose File > New > Project to see the available Visual Studio project templates.

Ab Visual Studio 2017 werden die Unterstützung für cmake-Projekte sowie Optionen für die Verwendung des Microsoft C++ -Compilers mit beliebigem Buildsystem oder mit einem losen Ordner von Quelldateien und ohne Projektdateien hinzugefügt.Starting in Visual Studio 2017, support for CMake projects is added, as well as options for using the Microsoft C++ compiler with any arbitrary build system, or with a loose folder of source files and no project files. Weitere Informationen finden Sie unter cmake-Projekte in Visual Studio und Öffnen von Ordner Projekten in Visual Studio.For more information, see CMake projects in Visual Studio and Open Folder projects in Visual Studio.

Microsoft-spezifische ModifiziererMicrosoft-specific modifiers

Der Microsoft Visual C++-Compiler implementiert mehrere Erweiterungen der C++-Standardprogrammiersprache, um die Programmierung für Windows-Betriebssysteme zu unterstützen.The Microsoft C++ compiler implements several extensions to the standard C++ programming language to support programming for Windows operating systems. Diese Erweiterungen werden unter anderem zum Angeben von Speicherklassenattributen, Funktionsaufrufknventionen sowie der Adressierungsart verwendet.These extensions are used to specify storage class attributes, function calling conventions, and based addressing, among other things. Eine vollständige Liste aller unterstützten C++-Erweiterungen finden Sie unter Microsoft-spezifische Modifizierer.For a complete list of all supported C++ extensions, see Microsoft-Specific Modifiers.

Sie können alle Microsoft-spezifischen Erweiterungen von C++ deaktivieren, indem Sie die /Za-Compileroption verwenden.You can disable all Microsoft-specific extensions to C++ by using the /Za compiler option. Diese Option wird für das Schreiben von Code empfohlen, der auf mehreren Plattformen ausgeführt werden soll.This option is recommended if you want to write code to run on multiple platforms. Weitere Informationen zur /Za-Compileroption finden Sie unter /Za, /Ze (Disable Language Extensions) (/Za, /Ze (Spracherweiterungen deaktivieren)).For more information on the /Za compiler option, see /Za, /Ze (Disable Language Extensions). Weitere Informationen zur C++ Compilerkonformität finden Sie unter Microsoft C++ Language Konformitäts Table und Nonstandard Behavior.For more information on C++ compiler conformance, see Microsoft C++ language conformance table and Nonstandard Behavior.

Vorkompilierte HeaderPrecompiled headers

Die Microsoft C- und C++-Compiler stellen Optionen für das Vorkompilieren von beliebigem C- oder C++-Code bereit, einschließlich Inlinecode.The Microsoft C and C++ compilers provide options for precompiling any C or C++ code, including inline code. Mithilfe dieser leistungsstarken Funktion können Sie einen stabilen Codeabschnitt kompilieren, den Code im kompilierten Zustand in einer Datei speichern und bei nachfolgenden Kompilierungen den vorkompilierten Code mit dem noch in Entwicklung befindlichen Code kombinieren.Using this performance feature, you can compile a stable body of code, store the compiled state of the code in a file, and, during subsequent compilations, combine the precompiled code with code that is still under development. So können nachfolgende Kompilierungen beschleunigt werden, da der bereits stabile Code nicht neu kompiliert werden muss.Each subsequent compilation is faster because the stable code does not need to be recompiled.

Sämtlicher vorkompilierter Code wird standardmäßig in den Dateien pch.h und pch.cpp (stdafx.h und stdafx.cpp in Visual Studio 2017 und früher) angegeben.By default, all precompiled code is specified in the files pch.h and pch.cpp (stdafx.h and stdafx.cpp in Visual Studio 2017 and earlier). Weitere Informationen zu vorkompilierten Headern finden Sie unter Erstellen vorkompilierter Headerdateien.For more information on precompiled headers, see Creating Precompiled Header Files.

Weitere Informationen finden Sie unter Ausführen von Linux-Programmen unter Windows.For more information, see Running Linux programs on Windows.

Siehe auchSee also

Projekte und BuildsystemeProjects and build systems