gpt4 book ai didi

c++ - 获取指向从属 YAML::Node 的指针

转载 作者:行者123 更新时间:2023-11-30 03:51:08 25 4
gpt4 key购买 nike

我正在编写一个配置文件库,我希望有一个指向子节点的指针以传递给需要 YAML::Node* 的函数,例如用于构建 YAML文档。

我可以很容易地创建一个新节点并获得一个指针:

YAML::Node* foo = new YAML::Node(); // Null node

我可以很容易地添加一个新的子节点:

(*foo)["bar"] = baz; 

但是,我不知道如何获取指向 (*foo)["bar"] 的指针。如果我尝试

&((*foo)["bar"]);

我收到error: taking address of temporary,这是真的,因为[] 运算符返回一个YAML::Node。有没有办法获取指向 (*foo)["bar"] 的指针,以便我可以将其传递给类似

的对象
void f(YAML::Node* const blah) 
{
(*blah)["banana"] = 1;
}

这很有用,因为这样我就可以通过递归调用 f 来构建树。

最佳答案

只需传递 YAML::Node,而不是指针。 YAML::Node 已经是一个引用类型,所以你可以像指针一样传递它。

关于c++ - 获取指向从属 YAML::Node 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31439034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com