定义容器类模板 optional
和数个支持模板。
要求
标头:<optional>
命名空间: std
成员
运算符
名称 | 描述 |
---|---|
operator== | 测试一个对象是否等于另一个对象。 |
operator!= | 测试一个对象是否不等于另一个对象。 |
operator< | 测试左侧的对象是否小于右侧的对象。 |
operator<= | 测试左侧的对象是否小于或等于右侧的对象。 |
operator> | 测试左侧的对象是否大于右侧的对象。 |
operator>= | 测试左侧的对象是否大于或等于右侧的对象。 |
注意
除了关系比较之外,<optional> 运算符还支持与 nullopt 和 T
进行比较。
函数
名称 | 描述 |
---|---|
make_optional | 将对象设为“可选”。 |
swap | 交换两个 optional 对象的包含值。 |
类和结构
名称 | 描述 |
---|---|
hash | 返回包含对象的哈希。 |
可选类 | 描述可以或不能具有某个值的对象。 |
nullopt_t struct | 描述不具有某个值的对象。 |
bad_optional_access 类 | 描述作为异常引发的对象,以报告访问不存在的值的尝试。 |
对象
名称 | 描述 |
---|---|
nullopt | 用于比较的 nullopt_t 实例。 |