- 现代C++语言核心特性解析
- 谢丙堃
- 2字
- 2021-09-27 17:49:46
前言
为什么要写这本书
近10年来C++的更新可谓是非常频繁,这让我在2017年时感受到了一丝不安。那个时候我发现在开源平台上已经有很多项目采用C++11和C++14标准编写,其中不乏一些知名的代码库,而公司里所用的编译环境还没有完全支持C++11,也很少有人真正了解过C++11的新特性。这带来一个很严重的问题,公司项目依赖的代码库更新到最新标准以后,我们将难以在一时之间维护甚至阅读它们,因为C++之父曾经说过“These enhancements are sufficient to make C++11 feel like a new language.”,他认为新特性的增强足以使C++11感觉像是一种新语言。可见即使是掌握C++11标准也需要将其当作一门新语言去学习,更何况当时的情况是C++17标准对C++又一次进行了大幅更新,很多原来的理解已经不准确甚至是不正确的了。尽管如此,我当时却没办法找到一本深入探讨C++11~C++17最新语言特性的书,在互联网上也只能找到零散的资料,并且大多数还是英文的。于是我产生了自己动手写一本深入探讨 C++最新语言特性的图书的想法。事实证明,我的担忧是有必要的。到目前为止已经有越来越多的项目开始迁移到新的C++标准,例如LLVM(C++14)、thrust(C++17)等,C++正在进入一个全新的时代,作为程序员的我们必须与时俱进地学习这些新特性来确保我们的技术不会过时。