Android NDK Eclipse CDT将赢得';我不允许使用字符串的substr方法

Android NDK Eclipse CDT将赢得';我不允许使用字符串的substr方法,android,c++,android-ndk,substring,eclipse-cdt,Android,C++,Android Ndk,Substring,Eclipse Cdt,即使是这样一个简单的代码也会出现错误 string test= "hello"; string part = test.substr(2, 3); 无效的候选参数有:stlpmtx_std::basic_string、stlpmtx_std::allocator>substr(?) 即使按尺寸铸造也无济于事 字符串部分=测试子字符串((尺寸)2,(尺寸)3) 但在Linux上使用GCC4.6作为控制台应用程序运行时,这两段代码都可以正常工作。 但是当使用Androind NDK时,它给了我一个

即使是这样一个简单的代码也会出现错误

string test= "hello";
string part = test.substr(2, 3);
无效的候选参数有:stlpmtx_std::basic_string、stlpmtx_std::allocator>substr(?)

即使按尺寸铸造也无济于事 字符串部分=测试子字符串((尺寸)2,(尺寸)3)

但在Linux上使用GCC4.6作为控制台应用程序运行时,这两段代码都可以正常工作。 但是当使用Androind NDK时,它给了我一个错误

如果我在编辑器中关闭文件并关闭Eclipse,然后打开Eclipse并构建它编译的项目。但是如果我打开文件,它就会抛出错误

我正在Application.mk make文件中使用APP_STL:=stlport_static

是的,我包括在内


编辑:我刚刚查看了.so文件的时间,它似乎正在编译,即使Eclipse显示了错误

我在“项目属性->C/C++常规”的“路径和符号”部分找到了我需要的解决方案,即让stlport system include文件夹

path_To_NDK/sources/cxx-stl/system/include
我只有一个

 path_To_NDK/sources/cxx-stl/stlport/stlport

我在项目属性->C/C++常规的“路径和符号”部分找到了我需要的解决方案,使stlport系统包含文件夹

path_To_NDK/sources/cxx-stl/system/include
我只有一个

 path_To_NDK/sources/cxx-stl/stlport/stlport

您是否包括了
?是的,我确实包括了它。您是否包括了
?是的,我确实包括了它。使用ADT捆绑包进行混合Android项目要容易得多。例如,它会自动为您切换包含路径。我确信我已经安装了ADT捆绑包ADT的最新版本不会为Android NDK工具链公开“路径和符号”。我不会更新ADT并破坏某些东西,所以,如果他们不公开它,Eclipse如何知道在哪里可以找到它呢?使用ADT捆绑包在混合Android项目上工作要容易得多。例如,它会自动为您切换包含路径。我确信我已经安装了ADT捆绑包ADT的最新版本不会为Android NDK工具链公开“路径和符号”。我不会更新ADT并破坏某些内容,因此如果他们不公开它,Eclipse如何知道在哪里可以找到它