Je développe actuellement en C++ sur Windows, en utilisant Visual Studio 2010. Après l'annonce officielle de C++11, j'ai commencé à utiliser certaines de ses fonctionnalités qui sont déjà disponibles dans MSVC. Mais, comme prévu, la grande majorité des nouveaux changements ne sont pas supportés.
Je pensais que la prochaine version de Visual Studio ajouterait peut-être ces nouvelles fonctionnalités. Cependant, après avoir lu ce il semble que très peu de choses vont changer.
Je suis donc curieux de savoir s'il est possible d'utiliser GCC sous Windows plutôt que MSVC, car il semble déjà supporter la grande majorité de C++11. Pour autant que je sache, cela signifierait utiliser MinGW (je n'ai pas vu d'autres versions natives Windows de GCC). Mais je me demande si cela vaut la peine d'essayer :
- Peut-il être utilisé comme un substitut de cl.exe, ou cela impliquerait-il de nombreuses modifications et des problèmes de compatibilité pour que Visual Studio utilise un compilateur différent ?
- Le principal argument de vente de Visual Studio, à mon avis, est son débogueur. Est-il encore utilisable si vous utilisez un autre compilateur ?
- Puisque GCC vient du monde *nix, et n'est pas natif de Windows, y a-t-il des problèmes de qualité de code en créant des applications Windows natives, par rapport à l'utilisation du compilateur MSVC natif ? (Si cela a de l'importance : la plupart de mes projets sont des jeux).
- En d'autres termes, la qualité de mes exe compilés souffrira-t-elle de l'utilisation d'un compilateur non natif de Windows ?
0 votes
Vous pouvez trouver que l'attente de Visual Studio 11 peut être une option à considérer également.
1 votes
Si vous voulez utiliser mingw, vous devez aussi considérer d'autres idéaux.
0 votes
@vcsjones : Le site auquel j'ai fait référence concernait les modifications apportées à C++11 dans Visual Studio 11. Je n'ai pas été impressionné, d'où ce billet.
1 votes
@vcsjones Pour information, il y a des indications selon lesquelles Microsoft publiera les mises à jour du compilateur en dehors du calendrier normal de publication de VS. Bien sûr, il s'agit de Microsoft, donc seul le temps nous le dira.
2 votes
La qualité du code généré par GCC est fondamentalement bien meilleure que celle de MSVC. Ce dernier ne connaît tout simplement pas de nombreuses optimisations :)
0 votes
@Constantius avez vous des références pour montrer cela ? Cela m'inciterait certainement à abandonner MSVC.
0 votes
@Nairou linux-kongress.org/2009/slides/ si vous parcourez les diapositives, vous remarquerez de nombreux cas où MSVC n'est pas assez intelligent :)
3 votes
Bien que je sois arrivé tard à cette fête, j'ai contourné VS2012 et suis passé directement à VS2013 et c'est étonnant par rapport à VS2010. Je n'ai eu qu'un seul problème pour initialiser atomic_bool avec bool et il y a quelques problèmes de fenêtrage bizarres que vous pouvez généralement contourner. Si vous vous souciez d'écrire un C++ correct, vous voudrez ce logiciel.