首页
›
编程基础与工程化
›
011-C
›
《C++模板高阶编程:从元编程到实战》
VIP20
本课程属于:011-C
编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
C++模板高阶编程:从元编程到实战
📚 共计 30 章节
01
模板基础回顾
函数模板与类模板的基本语法、模板实例化机制、模板参数推导规则。
基础
语法
02
模板特化与偏特化
全特化与偏特化的概念、函数模板特化、类模板特化、偏特化的匹配规则与实战技巧。
特化
匹配
03
模板参数进阶
非类型模板参数、模板模板参数、可变参数模板的声明与展开。
变参
非类型
04
类型萃取(Type Traits)基础
std::is_same、std::is_integral、std::enable_if的原理与使用。
traits
SFINAE
05
SFINAE(替换失败不是错误)
SFINAE的底层原理、std::enable_if的进阶用法、void_t技巧。
SFINAE
技巧
06
constexpr与编译期计算
constexpr函数与变量、constexpr if、编译期字符串处理。
constexpr
编译期
07
折叠表达式(Fold Expressions)
一元与二元折叠、逗号表达式折叠、实战:编译期参数检查。
折叠
变参
08
变参模板的递归展开
递归继承、递归组合、使用变参模板构建类型列表。
递归
类型列表
09
模板元编程基础
编译期整数序列、编译期条件判断、编译期循环(递归)。
元编程
序列
10
编译期数据结构
编译期列表(Typelist)、编译期集合操作、编译期排序算法。
Typelist
排序
11
策略类(Policy)与特征类(Traits)
策略类的设计模式、特征类的提取机制、标准库中的traits应用。
设计模式
traits
12
CRTP(奇异递归模板模式)
CRTP的基本形式、静态多态的实现、对象计数器的设计。
CRTP
静态多态
13
Mixins与多重继承
Mixin的模板实现、线性化继承、使用Mixin组合功能。
Mixin
组合
14
表达式模板(Expression Templates)
表达式模板的原理、惰性求值、向量运算的优化。
表达式
惰性求值
15
模板与设计模式
工厂模式的模板化、单例模式的模板化、访问者模式的模板化。
工厂
单例
16
完美转发与std::forward
引用折叠规则、完美转发的实现原理、变参模板中的转发。
转发
引用折叠
17
std::tuple深度剖析
tuple的实现原理、tuple的遍历与访问、tuple的算法。
tuple
遍历
18
std::variant与std::any
variant的实现原理、访问者模式与variant、any的类型擦除机制。
variant
any
19
std::function与类型擦除
function的实现原理、小对象优化、自定义函数包装器。
function
擦除
20
概念(Concepts)基础
C++20 Concepts的语法、约束与要求、与SFINAE的对比。
Concepts
C++20
21
概念进阶
自定义概念、复合约束、requires子句的多种用法。
requires
约束
22
模板与多线程
模板化的线程池、编译期任务调度、类型安全的消息队列。
线程池
并发
23
编译期反射(C++20/23)
constexpr反射、magic_enum库的使用、静态反射的展望。
反射
magic_enum
24
模板与序列化
编译期序列化框架、类型驱动的序列化、二进制协议的模板化。
序列化
二进制
25
模板与单元测试
模板化的测试框架、编译期测试断言、类型列表驱动的测试。
测试
断言
26
模板与领域特定语言(DSL)
使用模板构建嵌入式DSL、表达式模板与DSL、编译期解析。
DSL
嵌入式
27
模板性能优化
编译期计算与运行时性能、代码膨胀的控制、模板实例化的惰性化。
性能
膨胀
28
模板调试技巧
编译器错误信息的解读、static_assert的使用、概念约束的调试优势。
调试
static_assert
29
大型项目中的模板组织
模板的声明与定义分离(export)、显式实例化、模块(Modules)与模板。
模块
组织
30
综合实战:模板化JSON解析器
从词法分析到语法分析的模板化实现,构建完整的JSON解析器。
实战
JSON
所属VIP或分类
同VIP:C++-Qt界面开发速成
同VIP:C++-STL-源码级实战
同VIP:C代码质量提升工程实践