我必须提高我的c++知识,因为我们必须实现一个特定的模块与MS vc++。好的,这是我想要做的:我有一个全局的MS DOMDocument,它包含许多节点。这些节点描述对象数据...我收到一个唯一的对象标识符,必须在DOM中搜索该对象,并将其映射到给定的结构……
所以我有这样的想法:
IXMLDOMNode *Node = NULL;
if (FindObject(objectIdentifier, &Node))
{
nreturn = MapObject(Node, &pVarBind->value);
}这应该定义一个指向节点的指针,并使用该指针的引用调用FindObject方法。如果成功,则调用MapObject方法。然而,"Node“在Findobject之后总是为NULL,但在方法内部,它会找到它的对象,并试图将它传递回来……
Findobject如下所示:
bool MyController::FindObject(const string aObjectIdentifier, IXMLDOMNode **aObject)
{
bool success = false;
IXMLDOMNode *pXMLEntry = NULL;
//....searching the DOM
if (success)
{
aObject = &pXMLEntry;
}
return success;
}你知道可能出了什么问题吗?
发布于 2016-01-29 01:16:28
在FindObject中,当您将
aObject = &pXMLEntry;你所做的就是覆盖你的本地参数。您要做的是写入参数指向的值,如下所示:
*aObject = pXMLEntry;https://stackoverflow.com/questions/35067136
复制相似问题