我处理1M-2M代码行的混合代码库(Java / C ++),我们正在将开发环境升级到RHEL 7.3,将gcc从4.5升级到4.8.5,这确实为C +提供了一些(实验性的)支持11。
C ++代码已经存在了几年,你很难找到任何STL容器的使用,因为大多数当前的编码器认为c风格的数组和原始指针是最有效的编码方式[我们在防御域中做很多信号处理工作]。我们使用一些Boost和ACE来进行线程/网络/定时器/文件系统。
我需要一些很好的理由向管理层提出,说服他们将gcc升级到6.1 / 2/3是有益的。最引人注目的论点将围绕性能,但考虑到c风格数组和原始指针的大量使用,我不确定升级是否有帮助。
我知道新语言功能,如lambdas,自动,线程,统一初始化,智能指针,但不知道如何销售'这些功能。事实上,我认为新功能可能会被视为更多的障碍,因为任何使用它们都需要当前的开发人员了解它们的用法。
似乎没有任何不愿意升级RHEL 7.3以使用Java 8,理由是它包含最新的安全补丁'但升级C ++会遇到更多阻力!