RapidXML / C ++ - 解析为静态类成员

时间:2014-01-10 12:17:27

标签: c++ rapidxml

我有一个带有rapidxml :: xml_document的类,但是当我尝试将XML解析为它时,它会填充......好吧,不是垃圾,而是关于我的命名空间等的信息。

在下面的代码中,我有一些我尝试过的注释,注释掉的示例,以及从类成员字符串中正确填充的局部变量doc。

有什么想法吗?

·H

class PrintHeadGeometry
{
    // XML Stuff
    static rapidxml::xml_document<> m_xmlDocDPHX;   
    static std::string m_xmlStringDPHX;  

    // etc
};

的.cpp

// near the top
rapidxml::xml_document<> PrintHeadGeometry::m_xmlDocDPHX;
std::string PrintHeadGeometry::m_xmlStringDPHX = "";

// in my "load" function
std::ifstream file(filename);
std::stringstream buffer;
buffer << file.rdbuf();
file.close();
std::string content(buffer.str());
m_xmlStringDPHX = content;

// NEITHER OF THESE WORK - I WANTED THE TOP ONE, IDEALLY
//
//m_xmlDocDPHX.parse<0>(&m_xmlStringDPHX[0]);
//m_xmlDocDPHX.parse<0>(&content[0]);

// THIS WORKS THOUGH
//
rapidxml::xml_document<> doc;
doc.parse<0>(&m_xmlStringDPHX[0]);

0 个答案:

没有答案