alb*_*iff 48 c++ android std c++-standard-library android-ndk
我正在使用android NDK r9d和toolchain 4.8但我无法使用std :: to_string函数,编译器抛出此错误:
 error: 'to_string' is not a member of 'std'
android ndk不支持此功能吗?我试着APP_CPPFLAGS := -std=c++11没有运气.
yus*_*ulx 61
您可以尝试LOCAL_CFLAGS := -std=c++11,但请注意,并非所有C++ 11 API都可用于NDK的gnustl.libc ++(APP_STL := c++_shared)提供完整的C++ 14支持.
另一种方法是自己实现它.
#include <string>
#include <sstream>
template <typename T>
std::string to_string(T value)
{
    std::ostringstream os ;
    os << value ;
    return os.str() ;
}
int main()
{
    std::string perfect = to_string(5) ;
}
thu*_*ove 26
使用NDK r9 +,您可以使用llvm-libc ++,它提供对cpp11的完全支持.
在您的Application.mk中,您必须添加:
APP_STL:=c++_static 
要么
APP_STL:=c++_shared
kyb*_*kyb 12
如果您正在寻找Gradle构建系统的解决方案.看看这个答案.
添加字符串
arguments "-DANDROID_STL=c++_shared"
在你的build.gradle.喜欢
android {
  ...
  defaultConfig {
    ...
    externalNativeBuild {
      cmake {
        ...
        arguments "-DANDROID_STL=c++_shared"
      }
    }
  }
  ...
}
| 归档时间: | 
 | 
| 查看次数: | 34254 次 | 
| 最近记录: |