带有 yaml-cpp 0.5.1 的可选键

Optional keys with yaml-cpp 0.5.1

本文关键字:yaml-cpp 带有      更新时间:2023-10-16

前面的答案描述了如何使用YAML::Node::FindValue("parameter")检查yaml节点中是否存在密钥。

不幸的是,我无法在最新版本(0.5.1)中调用它:

 error: ‘class YAML::Node’ has no member named ‘FindValue’

这是否应该有效,或者是否有在最新版本中工作的等效功能?

在新 API 中,您只需检查:

if (node["parameter"]) {
  // ...
}

if (...)块中定义对象可能很方便:

if (YAML::Node parameter = node["parameter"]) {
  // process parameter
}