# 可空参数
## 底层设计
EplOnCpp的 可空 参数功能由`std::optional`提供支持
内部使用`std::nullopt`表达 空值
当处理 可空 参考 参数时,使用`std::reference_wrapper`包装引用,再使用`std::optional`存储数据
## 封装处理
EplOnCpp会自动读取从`std::optional`读取 可空 参数的值,如果为 空值,则使用该数据类型的默认值填充这一参数
当使用`是否为空`命令时,系统会特殊处理,通过`std::optional`的`has_value`成员方法,告知调用者参数是否为 空值