首先,该test
函数不应该编译,因为Value
它不支持复制构造函数。所以你必须使用Value& value
orconst Value& value)
代替。
回到问题,Value
代表DOM中的一个节点。Document
派生自Value
,它代表 DOM 的根。Document
提供将 JSON 解析为 DOM 的功能,但Value
不能。
如果函数不需要调用专用的API Document
,比如Document::Parse()
,你应该使用Value&
. 在 C++ 中也可以将Document
对象传递给参数。Value&