[Android(安卓)NDK]添加C++11和C++14支持
网上查了一下,大概时间表是这样的:
android ndk从2013年开始支持了C++11,从2015年开始支持C++14。
设置方法:
1、支持标准:
在 Android.mk 中加入
① c++ 11 标准:
LOCAL_CPPFLAGS += -std=c++11
② c++ 14标准:
LOCAL_CPPFLAGS += -std=c++1y
2、支持STL:
在Application.mk中加入:
APP_STL := gnustl_static
3、支持线程库:
当增加c++11或者c++14标准后,ndk就已经支持了thread class,但是由于eclipse存在bug,导致 __cplusplus 宏被定义了,但是没有赋值,从而导致eclipse 上会出现错误,解决的方法就是追加上对宏的赋值
在Android.mk中增加:
① c++ 11 标准:
LOCAL_CPPFLAGS += -D__cplusplus=201103L
② c++ 14 标准:
LOCAL_CPPFLAGS += -D__cplusplus=201300L
在代码中增加头文件:#include
4、支持异常处理
在Android.mk中增加:
LOCAL_CPPFLAGS := -fexceptions
在代码中增加头文件:#include
5、支持运行时类型信息(检查)
在Android.mk中增加:
LOCAL_CPPFLAGS := -frtti
在代码中增加头文件:#include
参考:
ndk c++11 thread rtti exception stl
http://jingyan.baidu.com/article/b87fe19ebd51fa52183568f7.html
更多相关文章
- Android(安卓)让你的SeekBar 也支持长按事件
- 开免跨的游戏引擎
- Android动了Java的奶酪?
- Android常用开源项目库
- 增加Android模拟器空间(Internal Storage)
- android 支持的资源类型及其存放的目录
- android 设备同时安装测试包和正式包
- 不同版本的TLS在Android中的支持情况
- Github上100个经典开源Java项目 值得阅读学习