【发布时间】:2018-03-16 04:49:38
【问题描述】:
给定以下 sample.yaml 文件:
Foo:
id: 10
name: "bob"
使用yaml-cpp,如何获取键名'Foo'?
给定代码:
YAML::Node doc = YAML::LoadFile("sample.yaml");
cout << "doc.Type(): " << doc.Type() << "\n";
cout << "doc.size(): " << doc.size() << "\n";
cout << "doc[Foo][id]: " << doc["Foo"]["id"] << "\n";
Type() 是 4 (Map) 正如预期的那样(Foo 是一个 Map)。
size() 如预期的那样为 1(Foo 是 doc 中唯一的项目)。
doc[Foo][id] 是 10,正如预期的那样。
但我似乎无法弄清楚如何从文档的一个节点中找到“Foo”。对 doc 进行迭代会生成一个 Node,但它的大部分操作都会引发异常。
【问题讨论】: