2
我正在使用qt 4.4.3和C++。我想實現一個QDomDocumentFragment對象,並將它作爲函數的返回值傳遞。我現在用同樣的方式爲QDomElement對象,與appendChild():我如何在qt中使用C++將孩子追加到QDomDocumentFragment對象中
QDomDocumentFragment rootnode;
QDomNode initmodnode = doc.createElement("initmod");
QDomText initmodval = doc.createTextNode("4");
initmodnode.appendChild(initmodval);
rootnode.appendChild(initmodnode);
以這種方式將其他7個節點,並在函數返回後,我注意到,與返回QDomDocumentFragment一個QDomElement節點上調用insertAfter()是不插入任何新的孩子。與函數內將以下代碼調試之後,我意識到沒有節點實際上得到插入根節點:
QMessageBox::information(this->owner, QObject::tr("Debug"), QObject::tr("Node has children: ")+QString::number(rootnode.childNodes().size()));
打印的信息是「節點具有子:0」。我在這裏錯過了什麼?