C++11标准出来以后,给我们很多惊喜,它变得更加现代化了。作为C语言的超集,一方面,C++集成了C在系统编程优点,能够精确的控制内存中的每一个bit;另一方面,提供了丰富的抽象机制和编程范式,引入了面向对象、泛型编程和函数式编程等风格。因为这一点,C++拥有了与C媲美的运行时性能,另一方面,也简化了C语言带来的领域建模的难度。但是因为C++的整体设计结合了多种风格,几乎相当于嵌套了几个小语言的一个庞大的系统,这也使得C++的整体易学性和易用性上有些差劲。同时,由于标准库更新跟不上需求,在诸如Concurrency/Network等应用层的软件设计方面逐渐被Java等后来者取代。而且,各个C++厂商对编译器的实现并没有完全参考ISO标准,也造成了很多跨平台可移植性和兼容性问题。
现代C++:
C++在最近几年进行了几次探索和蜕变,让整个语言变得更具备现代化的特色。
资源管理:
RAII(ResourceAquiration is In