Nig*_*een 8 c++ gcc visual-c++
我已经阅读了一些关于GCC vs MSVC的问题以及这些编译器的开发,比如GCC值得在Windows上用来取代MSVC?,Visual Studio还是GCC?和GCC vs MS C++编译器用于维护API向后二进制兼容性.但这些都是过时的问题(2011年).随着新的c ++ 14功能的出现,两个编译器之间开始平衡.是否仍然值得使用Windows上的Code :: Blocks以及使用Microsoft Visual Studio的所有优点,例如:
在我读过的大多数主题中,他们总是说GCC代码生成比MSVC更好,但是这个问题的差异开始缩小.GCC的代码生成是否更好?那些最新的c ++功能呢,它们中的哪一个领先?
我在使用GCC与MSVC时看到的最大优势是:
GCC上的C++ 14功能:https://gcc.gnu.org/projects/cxx1y.html
MSVC RTM上的C++ 11和C++ 14功能:http://blogs.msdn.com/b/vcblog/archive/2015/06/19/c-11-14-17-features-in-vs- 2015年,rtm.aspx
是.
虽然MSVC取得了一些对新的C++标准方面的进展,但仍远远落后,甚至在C++ 98的状态(这是方便从状态页面除外).
从我最近阅读的内容来看,MSVC团队甚至没有具体的计划来修复一些旧问题,例如使用名称查找和模板实例化.
现在,当你可以使用带有clang的MSVC作为编译器时,这可能是停止使用GCC的原因.但是,就我的目的而言,我发现clang具有更低劣的诊断功能(有时还有劣质代码),所以我仍然使用GCC作为我的主要编译器,只使用clang作为备份.
正如@Cheersandhth所说,使用两个编译器是件好事.虽然可能看看英特尔的编译器.
详细阐述的问题是对意见的公开邀请; 甚至有一些关于"最佳IDE"的挑衅等等.即使如此,标题中提出的问题,
" C++ - GCC [即g ++]现在值得在Windows上使用吗?
有一个简单的基于事实的答案,即是的,因为
在可能的情况下,将代码暴露给至少两个编译器是个好主意,例如组合Visual C++和g ++,以及
g ++有利于学习.
Windows中g ++的主要问题是它的API绑定只能完全覆盖Windows XP API 没有 之后很少.