Question

Est-ce que le mode C ++ 0x dans VC ++ 2010 a un bouton d'arrêt? Je travaille sur un projet qui devait compiler sur compilateurs non 0x, et donc je veux compiler contre la norme actuelle. (Même si non des nouvelles fonctionnalités sont utilisées directement, il y a encore des subtilités qui fait C ++ 0x plus premissive).

Le plus proche interrupteur que j'ai trouvé Configuration Properties -> C/C++ -> Language -> Disable Language Extensions mais c'est pas.

Était-ce utile?

La solution

Non, les extensions de langage sont généralement des ajouts spécifiques des fournisseurs non standard.

C ++ 0X dispose: Il n'y a aucun moyen direct pour désactiver ces fonctions. Une solution de contournement est de ne pas les utiliser. Toutefois, notez qu'il y aura encore de différence marquée dans les performances entre les versions d'exécution VC. VC10 met en œuvre déplacer la sémantique et la bibliothèque standard (std::string par exemple) utilise ces fonctionnalités généreusement.

Un compromis raisonnable à mon avis, est de revenir à VS2008. Les versions récentes VS ont été notoirement bogué (jusqu'à présent, dans mon expérience) et ont jamais travaillé comme ils le devraient sans Service Pack. VS2008 est assez stable maintenant, sans aucune de ces C ++ 0x caractéristiques et devrait adapter votre facture.

Autres conseils

Il semble que vous pouvez utiliser le jeu d'outils de VC2008 dans VS2010 voir: Visual C ++ 2010 compatibilité avec VC 2008

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top