C++语言正在走向完美,所以,C++语言值得学习(甚至研究),这些知识可以成为一切编程的基础。然而在实践中,不必全面的使用C++语言的各种特性,而应根据工程项目的实际情况,适当取舍(譬如动态类型信息、虚拟继承、异常等特性的使用很值得商榷)。------《C++ Primer》(第5版)推荐序1
C++11标准公布后,C++社群出现了久违的热情,有人甚至叫出了"C++的复兴"。指望C++回到20世纪90年代中期那样的地位显然是昧与大势的奢望,但是C++经历了这么多年的打磨与起伏,其在工业界的地位已经非常稳固,在很多领域里已经是不可取代也没有必要被取代的统治者。新标准的出现能够大大提升C++开发的效率和质量,因此赢得欢呼也是情理之中。------《C++ Primer》(第5版)推荐序2
在C++11以前,C++的抽象可以说存在若干缺陷,其中最严重的是缺少自动内存管理和对象级别的消息发送机制。今天看来,C++98只能说是特定历史条件造成的半成品,无论是从语言机制还是标准库完备程度来说,可以说都存在明显的、不容忽略的缺陷。其直接后果,就是优雅性的缺失和效率的降低。------《C++ Primer》(第5版)推荐序2
C++11出来之后,增强的语言机制和大为完善的标准库,为C++语言的编程风格带来了革命性的变化。如果能够纯熟地运用C++11的新特性、新机制,那么就能够形成一种简介优雅的C++编程风格,以比以前更高的效率、更好的质量进行软件开发。------《C++ Primer》(第5版)推荐序2
C++为何具有如此强大的生命力?首先,这和它背靠C语言这种"标准通用汇编"是分不开的,C++是作为一种"高级的C"而存在的,它始终可以看作是一种C语言的简写法,任何一句C++都有着深刻的C语言背景,可以直接落实为C语言,进而落实为任何一种计算机最底层的机器码。这一点,是任何解释型语言都做不到的,因而在效率上它们无法和C++比拼。另一方面,C++又有强大的抽象能力,它以奇妙的方式融合着5种编程泛型,即面向过程、基于对象、面向对象、泛型和函数式,在将所有范型的优点提炼并发挥到极致的同时,又不拘泥于其中的任何一种。------《C++ Primer》(第5版)推荐序3
C++语言是彻底的拿来主义和实用主义,因而它不会在"是否应该提供单根结构以保持面向对象的纯洁性"这样的问题上纠缠不清,它只会考查每一种语言特性将落实为怎样的编译结果,哪种编译结果符合"不为用不大的特性付出成本"、"与现存代码可以兼容"等若干简明的规则,这种语言特性就按照哪种方式来定义和实现。现有的编程语言中,没有哪种可以在灵活性和效率的平衡上能达到C++的高度。------《C++ Primer》(第5版)推荐序3
2011年,C++标准委员会发布了ISO C++标准中的一个重要修订版。此修订版是C++进化过程中的最新一步,延续了前几个版本对编程效率的强调。新标准的主要目标是:使语言更为统一,更易教学;使标准库更简单、安全,使用更高效;使编写高效率的抽象和库变得更简单。 ------《C++ Primer》(第5版)前言
现代C++语言可以看作是三个部分:低级语言,大部分继承自C语言;现代高级语言特性,允许我们定义自己的类型以及组织大规模程序和系统;标准库,它利用高级特性来提供有用的数据结构和算法。------《C++ Primer》(第5版)前言