命名空间
变体
操作

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 的返回值形式引发的异常
(类) [编辑]