命名空间
变体
操作

std::experimental::any

来自 cppreference.cn
 
 
实验性
技术规范
文件系统库 (filesystem TS)
库基础 (library fundamentals TS)
库基础 2 (library fundamentals TS v2)
库基础 3 (library fundamentals TS v3)
并行扩展 (parallelism TS)
并行扩展 2 (parallelism TS v2)
并发扩展 (concurrency TS)
并发扩展 2 (concurrency TS v2)
概念 (concepts TS)
范围 (ranges TS)
反射 (reflection TS)
数学特殊函数 (special functions 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 的值返回形式抛出的异常
(类) [编辑]