Leitfaden C++ zum Portieren und Aktualisieren von MicrosoftMicrosoft C++ porting and upgrading guide

Dieser Artikel enthält eine Anleitung zum Aktualisieren von C++ Microsoft-Code auf die neueste Version von Visual Studio.This article provides a guide for upgrading Microsoft C++ code to the latest version of Visual Studio. Für Projekte, die in Visual Studio 2010 bis 2015 erstellt wurden, öffnen Sie einfach das Projekt in Visual Studio 2019.For projects created in Visual Studio 2010 through 2015, just open the project in Visual Studio 2019. Sie können ein Visual Studio 2008-Projekt oder ein früheres Projekt in zwei Schritten aktualisieren.You can upgrade a Visual Studio 2008 or earlier project in two steps. Verwenden Sie Visual Studio 2010, um das Projekt zuerst in das MSBuild-Format zu konvertieren.Use Visual Studio 2010 to convert the project to MSBuild format first. Öffnen Sie dann das Projekt in Visual Studio 2019.Then open the project in Visual Studio 2019. Umfassende Anweisungen finden Sie unter aktualisieren C++ von Projekten aus früheren Versionen von Visual Studio.For complete instructions, see Upgrading C++ projects from earlier versions of Visual Studio.

Die Toolsets in Visual Studio 2015, Visual Studio 2017 und Visual Studio 2019 sind binär kompatibel.The toolsets in Visual Studio 2015, Visual Studio 2017, and Visual Studio 2019 are binary-compatible. Jetzt können Sie auf eine neuere Version des Compilers aktualisieren, ohne die Bibliotheksabhängigkeiten aktualisieren zu müssen.Now you can upgrade to a more recent version of the compiler without having to upgrade your library dependencies. Weitere Informationen finden C++ Sie unter binäre Kompatibilität 2015-2019.For more information, see C++ binary compatibility 2015-2019.

Wenn Sie Projekte aktualisieren, die Open Source-Bibliotheken verwenden oder auf mehreren Plattformen ausgeführt werden sollen, empfiehlt es sich, zu einem cmake-basierten Projekt zu migrieren.When upgrading projects that use open-source libraries or are meant to run on multiple platforms, we recommended migrating to a CMake-based project. Weitere Informationen finden Sie unter cmake-Projekte in Visual Studio .For more information, see CMake projects in Visual Studio

Gründe für UpgradeCode C++Reasons to upgrade C++ code

Wenn eine Legacy Anwendung in einer sicheren Umgebung zufriedenstellend ausgeführt wird und nicht aktiv ist, ist es möglicherweise nicht sinnvoll, ein Upgrade durchzuführen.If a legacy application is running satisfactorily, in a secure environment, and isn't under active development, there might not be much incentive to upgrade it. In diesen Fällen sollten Sie jedoch ein Upgrade in Erwägung gezogen haben: für Ihre Anwendung ist eine laufende Wartung erforderlich.However, consider an upgrade in these cases: Your application requires ongoing maintenance. Oder Sie erstellen eine neue Featureentwicklung oder nehmen Leistungs-oder Sicherheitsverbesserungen vor.Or, you're doing new feature development, or making performance or security improvements. Ein Upgrade bietet folgende Vorteile:An upgrade brings these benefits:

  • Der gleiche Code kann schneller ausgeführt werden, da wir die Compileroptimierungen verbessert haben.The same code can run faster, because we've improved compiler optimizations.

  • Dank C++ moderner Features und Programmierverfahren werden viele häufige Fehler Fehler vermieden und Code erzeugt, der wesentlich einfacher zu verwalten ist als ältere Idiome im C-Stil.Modern C++ features and programming practices eliminate many common causes of bugs, and produce code that's far easier to maintain than older C-style idioms.

  • Buildzeiten sind aufgrund von Leistungsverbesserungen im Compiler und Linker schneller.Build times are faster, because of performance improvements in the compiler and linker.

  • Bessere Einhaltung von Standards.Better standards conformance. Mit der /permissive- -Compileroption können Sie Code identifizieren, der nicht C++ dem aktuellen Standard entspricht.The /permissive- compiler option helps you identify code that doesn't conform to the current C++ standard.

  • Bessere Lauf Zeit Sicherheit, einschließlich sichereren Funktionen der C-Lauf Zeit Bibliothek .Better run-time security, including more secure C Runtime library features. Und, Compilerfunktionen wie Wächter Überprüfung und Adress bertizer (neu in Visual Studio 2019 Version 16,4).And, compiler features such as guard checking and address sanitizers (new in Visual Studio 2019 version 16.4).

Multiadressieren und UpgradeMultitargeting vs. upgrading

Möglicherweise ist ein Upgrade Ihrer Codebasis auf ein neues Toolset keine Option für Sie.Perhaps upgrading your code base to a new toolset isn't an option for you. Sie können weiterhin das neueste Visual Studio zum Erstellen und Bearbeiten von Projekten verwenden, die ältere Toolsets und Bibliotheken verwenden.You can still use the latest Visual Studio to build and edit projects that use older toolsets and libraries. In Visual Studio 2019 können Sie Features wie die folgenden nutzen:In Visual Studio 2019, you can take advantage of features such as:

  • moderne Statische Analysetools, einschließlich der C++ wichtigsten Leitfäden und clang-bereinigen, um potenzielle Probleme im Quellcode zu identifizieren.modern static analysis tools, including the C++ Core Guidelines checkers and Clang-Tidy, to help identify potential problems in your source code.

  • die automatische Formatierung gemäß ihrer Wahl moderner Stile kann dazu beitragen, dass Legacy Code viel besser lesbar wird.automatic formatting according to your choice of modern styles can help make legacy code much more readable.

Weitere Informationen finden Sie unter Use native multi-targeting in Visual Studio to build old projects (Verwenden der nativen Festlegung von Zielversionen in Visual Studio, um alte Projekte zu erstellen).For more information, see Use native multi-targeting in Visual Studio to build old projects.

In diesem AbschnittIn this section

TitelTitle BeschreibungDescription
Aktualisieren C++ von Projekten aus früheren Versionen von Visual StudioUpgrading C++ projects from earlier versions of Visual Studio Aktualisieren Ihrer Codebasis auf Visual Studio 2019 und v142 des Compilers.How to upgrade your code base to Visual Studio 2019 and v142 of the compiler.
IDE-Tools für C++ die Aktualisierung von CodeIDE tools for upgrading C++ code Nützliche IDE-Features, die den Upgradeprozess unterstützen.Useful IDE features that help in the upgrade process.
C++binäre Kompatibilität 2015-2019C++ binary compatibility 2015-2019 Verwenden Sie V140-und v141-Bibliotheken unverändert aus v142-Projekten.Consume v140 and v141 libraries as-is from v142 projects.
Verwenden von nativen Zielversionen in Visual Studio, um alte Projekte zu erstellenUse native multi-targeting in Visual Studio to build old projects Verwenden Sie Visual Studio 2019 mit älteren Compilern und Bibliotheken.Use Visual Studio 2019 with older compilers and libraries.
Änderungsverlauf von Visual C++ von 2003 bis 2015Visual C++ change history 2003 - 2015 Eine Liste aller Änderungen in den Microsoft C++ -Bibliotheken und-Buildtools von Visual Studio 2003 bis 2015, die möglicherweise Änderungen im Code erfordern.A list of all the changes in the Microsoft C++ libraries and build tools from Visual Studio 2003 through 2015 that might require changes in your code.
Visual C++: Neuerungen von 2003 bis 2015Visual C++ What's New 2003 through 2015 Alle neuen Informationen zu Microsoft C++ von Visual Studio 2003 bis Visual Studio 2015.All the "what's new" information for Microsoft C++ from Visual Studio 2003 through Visual Studio 2015.
Portieren und Aktualisieren: Beispiele und FallstudienPorting and Upgrading: Examples and Case Studies Für diesen Abschnitt wurden mehrere Beispiele und Anwendungen portiert und aktualisiert und die Erfahrungen und Ergebnisse dieses Vorgangs erläutert.For this section, we ported and upgrades several samples and applications and discussed the experiences and results. Diese Artikel vermitteln Ihnen einen Eindruck davon, was mit dem portieren und Upgradeprozess verbunden ist.These articles give you a sense of what's involved in the porting and upgrading process. Im Verlauf des Vorgangs werden immer wieder Tipps und Tricks für das Upgrade gegeben und erläutert, wie bestimmte Fehler korrigiert wurden.Throughout the process, we discuss tips and tricks for upgrading and show how specific errors were fixed.
Portieren auf die universelle Windows-PlattformPorting to the Universal Windows Platform Enthält Informationen zum Portieren von Code für Windows 10Contains information about porting code to Windows 10
Einführung in Visual C++ für UNIX-BenutzerIntroduction to Visual C++ for UNIX Users Enthält Informationen für UNIX-Benutzer, die noch keine Erfahrungen mit Visual C++ sammeln konnten und die Anwendung produktiv einsetzen möchten.Provides information for UNIX users who are new to Visual C++ and want to become productive with it.
Ausführen von Linux-Programmen unter WindowsRunning Linux programs on Windows Erläutert die Optionen zum Migrieren von UNIX-Anwendungen zu Windows.Discusses options for migrating UNIX applications to Windows.

Siehe auchSee also

C++ in Visual StudioC++ in Visual Studio
Neuerungen beim C++-Compiler in Visual StudioWhat's New for The C++ compiler in Visual Studio
Verbesserungen der C++-Konformität in Visual StudioC++ conformance improvements in Visual Studio