C++20
concepts 概念
概念 (Concept) 是一种编译期谓词(predicate),它是一种直接在语言层面用来约束(constrain)模板参数的特性。
简单来说,它允许你清晰地声明:“这个模板参数 T 必须满足某些要求”(例如,T 必须是一个整数,或者 T 必须有一个 .begin() 成员函数)。
具体见(CPP++.md)
jthread
C++20 引入了 std::jthread,它是对
std::thread 的增强版本,位于 <thread>
头文件中。jthread
的“j”代表“joining”,意味着它在析构时会自动调用
join(),从而简化了线程的管理。
1 |
|
协程
C++20 的协程 (Coroutines) 在语言层面引入了一种全新的函数控制流,允许函数在执行中途挂起 (yield),并在稍后的某个时间点从挂起处恢复 (resume),而不会阻塞调用它的线程。
ranges
C++20 引入了 Ranges 库,位于 <ranges>
头文件中。它为处理序列数据提供了一种更直观和强大的方式,允许你以声明式的风格来操作数据集合。