C++ und Visual Studio 2010: Besser denn je mit zahlreichen neuen Funktionen und rosiger Zukunft

Unter Entwicklern scheint allgemein ein wenig Skepsis zu herrschen, wie die Zukunft für C++ in Visual Studio aussieht. Alle jene, die sich sorgen, dass C++ für Visual Studio zu einem vernachlässigten Stiefkind geworden sein könnte, sei die Angst mit folgendem Ausspruch genommen, welchen Jason Zander auf der TechEd 2010 geäußert hat: „Lassen Sie mich das laut und deutlich festhalten: Microsoft investiert massiv und langfristig in die Unterstützung für C++ in Visual Studio. “ – Jason Zander ist Vice President bei Microsoft und leitet das die gesamte Entwicklung von Visual Studio, besser als er kann niemand diese Frage beantworten.

Christian Binder hat die TechEd genutzt, um zum selben Anlass ein kurzes Interview mit Ale Contenti zu führen, dem Principal Development Manager im C++ Team von Visual Studio. Contenti bestärkt auch dort Microsofts langfristige Unterstützung für C++. Zum Videointerview mit Ale Contenti gelangen Sie hier.

Hier ein kurzer Auszug der vielen Neuerungen für C++ in Visual Studio 2010

Bessere User Experience

Es wurden mehrere Verbesserungen vorgenommen, um das Reaktionsverhalten der Visual C++-IDE zu beschleunigen (insbesondere bei der Arbeit mit großen Anwendungen). Zahlreiche IDE-Komponenten, beispielsweise das IntelliSense-Modul, analysieren und verarbeiten Dateien im Hintergrund. Sie müssen nicht mehr warten, bis Visual Studio das gesamte Projekt vorverarbeitet hat, um eine Headerdatei ändern zu können, zwischen Projektelementen zu wechseln oder das Projekt neu zu konfigurieren.

Die aktualisierten IntelliSense-Features sind außerdem exakter und verarbeiten erweiterte C++-Codekonstrukte und bedingte Makros, die von früheren Versionen nicht verarbeitet werden konnten.

Verbesserte Visualisierungsmöglichkeiten (mit Feature Pack 1 )

Visual Studio 2010 verfügt bereits „out of the box“ über hervorragende Visualisierungsmöglichkeiten von .NET-Programmcode; für native Entwicklung in C++ oder für Webprojekte oder Websites die mit Visual Studio entwickelt werden war dies bislang allerdings nicht enthalten. Das erste Feature Pack für Visual Studio 2010 hat diese Funktionalität nachgereicht und bietet umfassende Visualisierungsmöglichkeiten für nativen Code in C++, sowie für Web Applications, Websites und ASP.NET MVC-Code.

Verwenden bestimmter Compiler und Bibliotheken

In Visual Studio 2010 können Visual C++-Projekte das Toolset von Visual Studio 2010 oder von Visual Studio 2008 verwenden. Sie können die IDE-Erweiterungen in Visual Studio 2010 nutzen, auch wenn Sie eine ältere Version der Visual C++-Bibliotheken und Compiler verwenden. Um zwischen den Toolsets zu wechseln, müssen Sie lediglich eine Eigenschaft in Ihrer Projektdatei ändern.

Buildverbesserungen

Das alte Dateiformat für Visual C++-Projekte (.vcproj) wurde durch das neue Dateiformat (.vcxproj) ersetzt. Um einen Projektbuild zu erstellen, verwenden Sie nun MSBuild.exe anstatt VCBuild.exe. MSBuild ist eine Buildplattform von Microsoft, die bessere Diagnose, Erweiterbarkeit und Integration unterstützt.

Windows 7-Unterstützung

Visual Studio 2010 unterstützt zahlreiche Windows 7- und Windows Vista®-Features in MFC-Anwendungen (Microsoft Foundation Classes). Mit der Multi-Touch-Unterstützung können Sie beispielsweise die Vorteile der Mehrfingereingabe nutzen. Das neue Aussehen und Verhalten der MFC-Multifunktionsleiste im Stil von Windows 7 und ein visueller Designer für Funktionsleisten machen die Aktualisierung der Benutzeroberflächen in Ihren Anwendungen zum Kinderspiel. Anwendungen können sich über die MFC-Unterstützung von Sprunglisten, Aero-Miniaturansichten in der Taskleiste, angepasste allgemeine Dateidialogfelder und die Symbolvorschau auch in der Windows 7-Shell im besten Licht präsentieren. Die Unterstützung des Neustart-Managers ermöglicht es Ihren Anwendungen, einen Anwendungsneustart selbst durchzuführen und automatisch gespeicherte Benutzerdaten bei einem unerwarteten Neustart wiederherzustellen.

Neue C++0x-Sprachfeatures

Der Visual C+-Compiler umfasst fünf neue Features, um den C++0x-Standard zu unterstützen: Lambda-Ausdrücke, R-Wert-Referenzen, CompileTime-Direktiven, Ermittlung des Ausdruckstyps, Automatische Typenableitung.

Verbesserung der Codegenerierung

Am Visual C++-Compiler in Visual Studio 2010 wurden folgende Verbesserungen bezüglich der Kompilierungsgeschwindigkeit vorgenommen:

Die LTCG-Kompilierung (Link-Time Code Generation) wurde wesentlich beschleunigt. In unseren Tests wurde ein LTCG-Build von Microsoft SQL Server (eine Anwendung mit mehr als 50 MB Text) um ca. 30% schneller erstellt.

Die PGO-Instrumentation (Profile-Guided Optimization) ist nun ca. um einen Faktor von 1,7 schneller.

Im Blog von Christian Binder gibt es ebenfalls eine Fülle an Informationen für Softwareentwicklung mit C++ in Visual Studio: Über diesen Link gelangen Sie direkt zu einer Übersicht der Artikel für C++.