std::experimental::any

来自cppreference.com
 
 
实验性
技术规范
文件系统库 (文件系统 TS)
库基础 (库基础 TS)
库基础 2 (库基础 TS v2)
库基础 3 (库基础 TS v3)
并行扩展 (并行 TS)
并行扩展 2 (并行 TS v2)
并发扩展 (并发 TS)
并发扩展 2 (并发 TS v2)
概念 (概念 TS)
范围 (范围 TS)
反射 (反射 TS)
数学特殊函数 (特殊函数 TR)
实验性非 TS 功能特性
模式匹配
线性代数
std::execution
契约
2D 图形
 
 
std::experimental::any
 
在标头 <experimental/any> 定义
class any;
(库基础 TS)

any 描述用于任何类型的单个值的类型安全容器。

1)any 的对象存储任何满足构造函数要求的类型的一个实例或为空,而这被称为 any 类对象的状态。存储的实例被称作所含对象。若两个状态均为空,或均为非空且其所含对象等价,则两个状态等价。
2) 非成员 any_cast 函数提供对所含对象的类型安全访问。

鼓励实现避免小对象的动态分配,但这种优化仅可以应用于 std::is_nothrow_move_constructible 对其返回 true 的类型。

成员函数

构造 any 对象
(公开成员函数)
any 对象赋值
(公开成员函数)
销毁 any 对象
(公开成员函数)
修改器
销毁所含对象
(公开成员函数)
交换两个 any 对象
(公开成员函数)
观察器
检查对象是否持有值
(公开成员函数)
返回所含值的 typeid
(公开成员函数)

非成员函数

交换两个 any 实例
(函数)
对被容纳对象的类型安全访问
(函数模板)

辅助类

(库基础 TS)
返回值形式的 any_cast 在类型不匹配时抛出的异常
(类)