我正在使用c ++代码为核心逻辑开发一个android / iOS / windows应用程序。该应用程序使用免费的模糊逻辑库,它适用于Windows Mobile,iOS和我的本地Ubuntu机器,但它在Android下不太适用。
应用程序从SD卡读取.fcl文件,然后使用自由模糊逻辑库解析器解析它。问题是,解析器在解析的随机阶段陷入困境。
我的项目设置的一些注意事项:
我在manifest.xml中为sdcard启用了Android读/写权限。
我试图运行的代码是免费模糊逻辑库网站的基本示例。
我正在使用stlport_static库获取stl支持和-frtti编译器标志。
我的问题是:我是否遗漏了某些特定于Android的内容,例如文件编码或我未设置的某些权限?
我想到的一些注意事项:
文件压缩应该不是问题,因为据我所知,SD卡上的文件没有压缩,我可以部分解析文件。
使用其他模糊逻辑库是不可能的,因为我无法使用GPL许可库。我找到的唯一的其他库没有说明手册/如何解析fcl标准。
自由模糊逻辑库使用了很多wchar_t可能是一个问题。
感谢您的时间,希望能得到一些帮助;)
答案 0 :(得分:0)
好的经过一些Android手册和一些谷歌滥用后我发现了问题。目前Android不支持wchar_t类型。那么你可以使用它,但结果将不同于任何其他操作系统。
通过将自由模糊逻辑库中的所有wchar_t和wstring类型更改为相应的char和字符串类型,我能够使解析器工作。好吧,还有一些不协调,但我无法处理;)。
结论:不要在android c ++程序中使用宽字符。
感谢您的时间和帮助