Erkunden der C 11-Funktionen in Visual Studio 2012
Mit der steigenden Vorfreude auf Visual Studio 2012, den Nachfolger von VS2010, sind Entwickler gespannt um zu erfahren, welche Funktionen C 11 bietet.
Neues C 11 Funktionen in Visual Studio 2012
Während Visual Studio 2010 vorläufige Unterstützung für C 11 bereitstellte, übertrifft Visual Studio 2012 diese durch die Implementierung zusätzlicher C 11-Funktionen, darunter:
- Erweiterte R-Wert-Referenzen: Aktualisiert R-Wert-Referenzen auf die Version 2.1.
- Erweiterte Lambdas: Erweitert die Lambda-Ausdrucksunterstützung auf Version 1.1.
- Decltype-Verbesserungen: Erweitert Decltype auf Version 1.1. (Allerdings ist es noch nicht in der Entwicklervorschau verfügbar.)
- Verfeinerte Ausrichtung: Führt eine verbesserte Ausrichtungsunterstützung ein, ist jedoch noch unvollständig.
- Complete Strongly- Typisierte Aufzählungen: Bietet umfassende Unterstützung für stark typisierte Aufzählungen Aufzählungen.
- Weiterleiten deklarierter Aufzählungen: Ermöglicht die Vorwärtsdeklaration von Aufzählungen.
- Standardlayout und triviale Typen: Erleichtert die Identifizierung und Verwendung von Standardlayouts und triviale Typen.
- Atomics: Beinhaltet Unterstützung für Atomare Operationen.
- Verbesserter Vergleich und Austausch: Verbessert Vergleichs- und Austauschvorgänge.
- Bidirektionale Zäune: Führt bidirektionale Zäune für den Speicher ein Synchronisierung.
- Datenabhängigkeitsreihenfolge: Ermöglicht die Datenabhängigkeitsreihenfolge Multithread-Anwendungen.
- Bereichsbasierte For-Schleife: Stellt syntaktischen Zucker für die Iteration über Container bereit.
Zusätzliche C 11-Funktionalität im Visual C Compiler November 2012 CTP
Microsofts CTP-Version vom November 2012 für den Visual C Compiler erweitert die C 11-Funktionen in Visual Studio 2012 weiter:
- Einheitliche Initialisierung: Ermöglicht eine vereinfachte und konsistente Variableninitialisierung.
- Initializer Listen: Erleichtert die Initialisierung mehrerer Mitglieder mit einem einzigen Ausdruck.
- Variadische Vorlagen: Unterstützt Vorlagen, die eine variable Anzahl von Argumenten akzeptieren können.
- Standardargumente für Funktionsvorlagen: Ermöglicht Standardargumentwerte für für Funktionsvorlagen angegeben werden.
- Delegierende Konstruktoren: Führt delegierende Konstruktoren ein für eine verbesserte Codeorganisation.
- Explizite Konvertierungsoperatoren: Ermöglicht Programmierern die Definition und Steuerung expliziten Konvertierungsverhaltens.
- Rohzeichenfolgen: Unterstützt Zeichenfolgen mit Ausnahme aus Escape-Sequenzen.