C++ の DOM* クラスの createXXX メソッドに関する質問です。DOM* createXXX メソッドから返されたメモリーを解放するために何か特別なことをする必要がありますか?
例(トランスコードは単純化のために削除され、トランスコード操作に関連する変数の関連リリース、私はそれらについて知っています):
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);
最終的にメソッドを離れるとき、createXXX メソッドからメモリを解放するために、firstElement、secondElement、name に対して何か特別なことをする必要がありますか? それとも、pdoc がすべてのメモリを所有していて、DOMDocument を破棄するのを待たなければならないのでしょうか?
議論に追加する場合は、名前/値のロジックをループして、複数の属性を secondElement に追加します。
ありがとう。