代码之家  ›  专栏  ›  技术社区  ›  Netwave

RapidXML android ndk解析文档时出现问题

  •  0
  • Netwave  · 技术社区  · 11 年前

    我在为android编译这个时遇到了问题:

    string buffer = readString(m_paths[SCREEN]);
    if (buffer != "")
    {
        //Read full buffer
        xml_document<> doc;
        doc.parse<0>((char*)buffer.c_str());
    }
    

    它在VS2010上运行良好,但由于某些原因,它在ndk中失败,返回以下错误:

    error:exception handling disabled, use -fexceptions to enable
    

    我搜索过,发现了这个: RapidXML compilation error parsing string

    我试过了,但也不起作用。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Jesse Good    11 年前

    错误告诉您该怎么做: use -fexceptions to enable .

    你可以把它添加到你的Android.mk中, APP_CPPFLAGS += -fexceptions -frtti .

    此外,您的代码是错误的。将代码更改为 doc.parse<0>(&buffer[0]); . c_str() 返回a 常量 不可修改的字符指针 parse 修改内容,以便您需要传递底层缓冲区。