举例代码如下:
CString m_strXMLData = "";
CString m_strXMLContents = "";
CString strFileName = "1.xml";
_bstr_t bstrFileName;
bstrFileName = strFileName.AllocSysString();
variant_t vResult;
vResult = m_plDomDocument->load(bstrFileName);
MSXML2::IXMLDOMElementPtr p= m_plDomDocument->documentElement;
MSXML2::IXMLDOMNamedNodeMapPtr s= sda->attributes;
int length = p->childNodes->length;
MSXML2::IXMLDOMNodePtr node;
for (int i = 0; i < length; i++)
{
node = p->childNodes->item[i];
GetNames(node);
}
//函数GetNames如下
GetNames(MSXML2::IXMLDOMNodePtr node)
{
int i = node->childNodes->length;
}
在调用这个函数时会出现内存错误
0x6833b1b8 处有未经处理的异常: 0xC0000005: 读取位置 0x00000000 时发生访问冲突
请问为何会出现这样的问题~~
节点访问之前判断是否有有效的地址