我有一个 YAML 文件,例如:
top:
names:
- name: john1
- name: john2
- name: john3
- name: john.doe
现在我必须删除 top/names/name(john.doe)。如何使用 yaml-cpp 实现这一目标?我的代码是:
void deleteNode(string id)
{
YAML::Node config = YAML::LoadFile("doc.yaml");
for (int i = 0; i < config["top"]["names"].size(); i++)
{
if(config["top"]["names"][i]["name"].as<string>() == id)
{
config["top"]["names"].remove(config["top"]["names"][i]);
break;
}
}
}
deleteNode("john.doe");
这似乎没有任何作用。