
Ich habe die Community-Version von Visual Studio 2013 und dachte, dass C++11 standardmäßig aktiviert sein sollte.
Das Makro hat jedoch __cplusplus
den Wert 199711L (C++98) statt 201103L (C++11). Außerdem tritt beim Versuch, C++11-spezifischen Code (wie constexpr int a = 5;
) auszuführen, ein Fehler im Compiler auf. Wie aktiviere ich C++11?
Antwort1
Dass der Wert von __cplusplus
immer noch 199711L
ein Fehler ist, deran Microsoft gemeldet.
Das sollte Sie nicht davon abhalten, C++11-Code zu schreiben und zu kompilieren. Es sollte einfach funktionieren (keine besondere Konfiguration erforderlich).
In acht nehmendass die C++11-Implementierung von Visual Studio 2013unvollständig. Zu den nicht unterstützten Funktionen gehört constexpr
, was erklärt, warum Sie einen Kompilierungsfehler erhalten ;-)