大多数讲C++的书都是将模板技术作为一个章节简单带过,而这本书基于 C++11、C++14 和 C++17 标准,专注于说C++ 模板的设计与使用。全面涵盖模板语法、模板实参类型推导、全特化和偏特化、元编程、元组等模板知识,是一本C++模板编程的完全指南。
C++ 标准委员会的骨干David 、库工作组成员Nicolai,苹果公司的高级工程师Douglas ,3位大神组成的技术天团,专注模板技术,从基础知识出发,列举大量代码案例,详尽介绍了模板使用(包含新语言特性)与底层逻辑。
大多数面试宝典只会涉及到类模板和模板类的区别、万能引用、完美转发、手写一个函数模板等这些基础的模板知识。但在实际开发中会大量用到模板知识,特别是在泛型编程、重用代码、跨平台编程、性能优化等方面。C++ 模板一直是面试重点,这本书讲的极为细致、且介绍了许多新概念特性。
书中全是干货:
C++17优化或新增了:类模板参数推导、编译期 if、折叠表达式等新特性。
模板全特化和偏特化,为C++模板编程提供了极大的灵活性和扩展性,能够根据不同的参数类型或值组合为模板提供定制实现。详细介绍了全特化、类模板偏特化 、变量模板偏特化 、函数模板的偏特化等编程技术。
元编程技术,通过增加程序编译时间从而提升程序运行效率。虽然元编程性能高,但也要权衡元编程的复杂性和开销,例如编译时间增长、代码膨胀、代码难以理解和维护等。章节中特别提出了C++14、C++17中新支持的语法,如类型元编程和混合元编程等。
元组技术,tuple在C++项目中的会被大量使用。尤其是它可以将不同类型的数据打包形成一个单一的对象,使用索引访问其中的元素,避免了创建自定义的结构体或类来封装这些值。还可以将元组与其他STL容器(如vector、map等)结合使用,用以存储和操作复杂的数据结构。章节中详细介绍了tuple的使用方法和tuple类模板的实现。
三个部分:模板的基础概念、模板的语言细节、C++模板设计与编码技术,以一书打造一位传奇C++模板高手。
转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/275591.html