技术 | C++ 发展如何了?

今天让我们复盘一下C++在过去的一年里是如何变化的!有哪些重大事件,标准是如何发展的,工具是如何变化的等等。

 

简介

以下是2019年在C++发展过程中值得注意的主要事情:

 

时间线

下表有助于查看主要事件:

C++ 11/14的编译器支持

 

Clang(自3.4以来),GCC(自5以来)和英特尔(版本15)已经完全支持C++ 11/14。

VisualStudio团队宣布对C++ 11/14支持。现在,用户可以构建复杂的代码库,如boost::hana或range v3。由于C++ 11/14在所有主要编译器中都得到支持,所以没有任何借口不使用现代C++。

 

C++ 20

关于C++ 20的讨论今年占主导地位。2019年夏季,在Cologne ISO C++会议上,C++20的主要特征已经尘埃落定。后来,在贝尔法斯特,第一批国家机构的一些意见得到了解决。

总之,这意味着C++20在2020发布新标准的路上走得很好!

至于主要功能,我们可以列出以下几点:

更重要的是,很多C++ 20的特性已经在流行的编译器中实现了。

完整列表与CPUPROCE:C++20编译器支持一样可用,但这里列举几个新特性:

工具

当编译器用C++代码做主要工作时,我们不能忘记其他工具的重要性。

以下是一些重要的工具,值得了解:

Clang/LLVM提供了许多强大的实用程序!例如:

IDE和生产力:

代码分析器:

包管理器

 

受欢迎程度

C++在哪里流行?用户都被JavaScript分流了吗?

显然不是,因为在某些地方C++已经成长或保持在一个稳定的位置。

让我们看看一些图表/统计数据:

Tiobe第四位显示C++。现在是6.196%……去年是7%多,两年前是5.5%。

StackOverflow调查中C++位于第九位,排在C以上。(但排在Java、C#和JavaScript之下)。但对比去年的第十名,有所提升。

GITHUB调查中,C++排在第六位,从去年的第五位下降。

但C++仍然很强大。虽然它并不完美,也不容易学习,但是很多代码仍然是用这种语言构建的。 Rust或其他系统语言不会很快取代它。工具越来越好,语言的目的是减少复杂性,所以初学者的体验的也会越来越好。

以下是一个简单的调查问卷的统计结果,结果显示了关于 C++ 的使用情况,包括使用的标准库版本、工具的选择与对 C++20 新特性的使用等:

<在日常生活中,你使用哪种C++标准?>

总而言之,我们可以在未来十年积极地看待C++。 不知道以后会发生什么,但是在接下来的十年里,相信C++应该是相对稳定的。 所有的工具,新的C++标准编写的C++代码更容易访问,并且不易出错。C++仍然是需要性能的应用程序的最佳选择——它甚至取代C和FORTRAN。