在yaml-cpp中,如何创建一个在布尔上下文(似乎等同于!node.IsDefined()
)中评估为false的节点?
当前我正在使用
Node null = Node()["x"];
assert(!null);
适用于任何字符串-但这似乎是任意的,并非故意的。
答案 0 :(得分:0)
您的代码是正确的,原因是当密钥不存在时,唯一返回未定义节点的是operator[]
上的const Node
。也许更清楚地写成如下,但这与您写的基本上相同。
const Node node;
assert(!node["x"]);
答案 1 :(得分:0)
就这么简单
YAML::Node(YAML::NodeType::Undefined)