代码
#include <QtCore>
#include <QtXml/QDomElement>
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
QDomElement* element = new QDomElement();
element->setTagName("feature");
qDebug() << element->tagName();
return app.exec();
}
只打印""
。但是,据我所知the documentation,它应该打印"feature"
。事实上
qDebug() << element->isNull();
打印为true,因此未正确设置某些内容。有谁知道我做错了什么?
我在openSUSE Linux 11.2上使用Qt 4.6.3。
答案 0 :(得分:3)
您无法使用默认构造函数。您需要使用QDomDocument::createElement(const QString &tagName)
。元素必须是文档的一部分。你不能“独立”使用它。
以下是文档针对QDomElement default constructor所说的内容:
QDomElement :: QDomElement()
构造一个空元素。使用QDomDocument :: createElement()函数构造包含内容的元素。
“空”表示null。