C++ 发展如何了?

388 阅读4分钟

●简介 ●

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

  • C++ 20即将与广大用户群体见面

  • 工具

  • C++的流行度保持稳定位置

●时间线 ●

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

640.webp.jpg

●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发布新标准的路上走得很好!

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

  • 模块

  • 协程

  • 标准库Concepts的概念

  • 范围

  • constexpr支持:

    new/delete, dynamic_cast, try/catch, virtual

  • constexpr向量和字符串!

  • Chrono:日历,时区支持

  • std::format

  • std::span

  • std::jthread

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

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

640.webp (1).jpg

●工具 ●

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

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

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

  • Clang Tidy

  • Clang-Include-Fixer

  • AddressSanitizer

  • MemorySanitizer

  • 对于Visual Studio,用户可选择使用

    Clang Power Tools-visualstudio Marketplace。

IDE和生产力:

  • 视觉辅助 - 11月11日起的最新版本。

  • ReSharper C++ - 2019.3

  • CLion - 现在的版本是2019.3

  • CLion 2019.3-一个专注于性能和一些期待已久的增强的高质量目标发布

  • Cevelop1.13.0版本

代码分析器:

  • CppDepend v2019.3版

    今年,该团队增加了对MISRA编码指导原则的支持,VS 2019年的支持、QT项目、简化UI、嵌入式项目支持。

PVS Studio

  • 一个在程序的源代码中进行bug检测的工具,用C、C++和C语言编写。它在Windows和Linux环境下工作。

  • 最新版本是PVS Studio 7.05,请参阅今年的所有发行说明。

  • 今年的一些显著变化包括:分析.NET Core3和3.1项目、MISRA指南支持、40多项新检查、Java支持、SonarQube插件。

包管理器

  • Conan-提供1.21版

  • 微软/vcpkg

    VC++ 打包工具--Windows、Linux和Mac OS的开源C++库管理器。

●受欢迎程度 ●

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

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

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

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

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

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

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

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

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

640.webp (2).jpg

640.png

640 (1).png

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