关于 C++ 中 DOM* 类 createXXX 方法的问题。我是否需要做一些特别的事情来释放从 DOM* createXXX 方法返回的内存?
例如(为了简化而删除了转码,以及与转码操作相关的 vars 的相关版本,我知道这些):
pImplement = DOMImplementationRegistry::getDOMImplementation("LS");
DOMDocument* pDoc = pImplement->createDocument("Examples", "example", NULL );
DOMElement* pRoot = pDoc->getDocumentElement();
DOMElement* firstElement = pDoc->createElementNS(("Examples", "example");
DOMElement* secondElement = pDoc->createElementNS("Examples", "example2");
DOMAttr* name = pDoc->createAttribute("Name");
XMLCh* somenameValue = XMLString::transcode("Fred");
name->setValue(somenameValue);
secondElement->setAttributeNode(name);
firstElement->appendChild(secondElement);
当我最终离开该方法时,我是否必须对 firstElement、secondElement、name 执行任何特殊操作才能从 createXXX 方法中释放内存?还是 pdoc 拥有所有内存,我必须等待销毁 DOMDocument?
如果添加到讨论中,我会遍历名称/值逻辑并将多个属性添加到 secondElement。
谢谢。