2013-07-19 8 views
6

Ist es möglich, C++ 11 Funktionen auf VS2012 deaktivieren? Mein Code ist für das noch nicht fertig, und ich möchte nicht noch mehr Verwirrung vorstellenDeaktivieren C++ 11 Funktionen auf VS2012

+0

Hat der Ansatz erwähnt [hier] (http://stackoverflow.com/a/3536297/519383) in der Kommentar-Hilfe (d VS2008 Compiler über VS2012 verwenden)? –

+0

Ich würde auch gerne wissen, ob es auf VS2010 möglich ist, Entschuldigung zu entführen. – Twifty

+0

http://StackOverflow.com/Questions/3536029/Disabling-c0x-Features-in-VC2010 –

Antwort

0

Ab Visual C++ 2015 Update 3 ist es nun möglich, eine Sprachversion für die Sprachfunktionen festlegen (anscheinend ist es nicht nur Einstimmungsprüfung beeinflussen):

https://blogs.msdn.microsoft.com/vcblog/2016/06/07/standards-version-switches-in-the-compiler/

Leider sind die einzigen Optionen "C++ 14" (nicht genau, es enthält post-C++ 14 Merkmale, die zuvor geliefert hatten) und "C++ Latest" (C++ 14 und teilweise Implementierung von C++ 17 und Vorschlägen, aber nicht "experimentell" Funktionen)

Die entsprechenden Befehlszeilenschalter sind:

  • /std:c++14
  • /std:c++latest
0

Rechts das Projekt klicken -> Eigenschaften -> Allgemein -> Platform Toolset -> Visual Studio 2010

Dies ist die kompilieren Projekt mit dem Visual Studio 2010-Compiler.

+4

Aber VS2010 hat auch begrenzt C++ 11. – Twifty

+1

und Sie müssen den Compiler von VS'10 Setup auf Ihrem System haben. Es ist nicht mit VS'12 – alexbuisson

+0

@Waldermort Es gibt auch VS2008, die keine C++ 11 haben – Caesar

-1

Ja, Sie können C++ 11-Features auf dem Visual C++ - Compiler deaktivieren. Die Compileroption /Tc verursacht Fehler für die C++ 11-Syntax.

Leider werden C++ 03 und C++ 98 Kollateralschäden sein. Alles, was übrig bleibt, wird C89 sein, plus ein paar Microsoft-Erweiterungen wie Unterstützung für //single line comments.

+4

Ich denke, dass es wichtig ist, mehr zu verdeutlichen, dass Tc C. Herabstufung Es ist nicht nur Sie einige C++ verlieren, aber Sie verlieren C++ alle zusammen. –

+0

@Csaba: Ja, das stimmt.Bedeutete mein zweiter Absatz etwas anderes für dich? –

+0

Ich verstehe die Downvotes hier nicht. –