std::optional
是 C++17 引入的一个模板类,它提供了一种表达可选值的方式,即一个变量可以包含一个有效值或者不包含值(即为空)。这在处理可能返回空值的函数或者值可能不存在的情况下特别有用。
std::optional
基本用法
-
创建
std::optional
对象:
可以通过默认构造函数创建一个空的std::optional
对象,或者通过值来初始化它。 -
检查
std::optional
是否包含值:
使用has_value()
方法或者转换为bool
类型来检查std::optional
是否包含有效值。 -
访问值:
可以使用operator*
或value()
方法来访问std::optional
中的值。需要注意的是,在访问值之前应确保它包含有效值,否则会引发异常。 -
重置
std::optional