第24章 已弃用和移除的特性
# 第24章 已弃用和移除的特性
C++20中有一些特性已被弃用或最终被移除。
被移除的特性,编译器实现可能仍会提供,但你不能依赖这一点。如果你使用了已弃用的特性,编译器实现可能会发出警告,也可能不会。
# 24.1 已弃用和移除的核心语言特性
- 隐式捕获
*this
已被弃用。 - 聚合体(aggregate)不能再有任何用户声明(但非用户提供)的构造函数。
# 24.2 已弃用和移除的库特性
# 24.2.1 已弃用的库特性
自C++20起,以下库特性已被弃用,不应再使用:
- 类型特性
is_pod<>
。应使用is_trivial<>
或类似的类型特性替代它。 - 对普通共享指针的原子操作现已弃用。应使用原子共享指针替代。
# 24.2.2 已移除的库特性
- 对于字符串,成员函数
reserve()
不能再不带参数调用,且它不再缩减容量。 - 不能再将UTF - 8字符串写入标准输出流。
# 24.3 补充说明
弃用is_pod<>
由延斯·毛雷尔(Jens Maurer)在http://wg21.link/p0767r1 (opens new window)中提议并被接受。
上次更新: 2025/03/20, 19:44:38