有时,我们在开发中需要使用RTTI。什么?写的好的代码可以避免使用RTTI。不一定。什么情况下使用RTTI,一种很常见的例子,就是,我使用了一个父类指针容器,但是持有的是子类指针。并且,我需要调用子类指针的接口。这种情况下,就必须用RTTI了(或其他替代方案)。
使用RTTI的步骤。
#1.打开 项目目录\android\jni\Application.mk 

#2.
注释APP_STL := stlport_static
添加两行:
APP_STL := gnustl_static
APP_CPPFLAGS += -frtti

解释:NDK中默认关闭RTTI,所以使用-frtti开启。NDK中附带的stlport库不支持RTTI(也不支持异常)。所以,我们要将其替换为GNU的STL库。(NDK一共有四个STL库,system,stlport静态,stilport动态,gnu静态)
#3.
然后,使用cygwin控制台进入项目目录,clean一下。(最好直接删项目里的lib和obj文件夹,因为你改了编译选项,clean也是删不干净的。)
重新执行编译sh脚本即可
题外话:
     1.我测试了自己的手机,黑屏原因不明,连cocos2dx自带例子用RTTI编译都不行。另外,也不是所有平台都支持RTTI,android也是后续才增加支持的。所以你用了RTTI兼容性需考虑。
     2.RTTI会造成代码体积膨胀。效率可能会下降一点,不过我认为这不算什么问题。
     3.替代方案,最简单的使用cocos2dx的setTag和getTag。不过这要你自己定义一套符号系统,而且看起来傻一些。

cocos2d-x学习笔记07:在cocos2d-x中使用RTTI相关推荐

  1. JavaScript学习笔记07【6个经典案例——电灯开关、轮播图、自动跳转首页、动态表格、表格全选、表单验证】

    Java后端 学习路线 笔记汇总表[黑马程序员] w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符. ...

  2. MySQL学习笔记07【事务、用户管理和权限管理】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  3. 【EF学习笔记07】----------加载关联表的数据 贪婪加载

    [EF学习笔记07]----------加载关联表的数据 贪婪加载 讲解之前,先来看一下我们的数据库结构:班级表 学生表 贪婪加载 //贪婪加载 using (var db = new Entitie ...

  4. 《机电传动控制》学习笔记-07

    <机电传动控制>学习笔记07 胡恒谦 机卓1301 (注:本周补上第7周的学习笔记) PLC的编程元件: PLC内部有许多不同功能的器件,实际上这些器件是由电子电路和存储器组成的. 1.  ...

  5. Liunx学习笔记 - 07 - 02 正则表达式与文件格式化处理

    Liunx学习笔记 - 07 - 02 正则表达式与文件格式化处理 1 前言:啥是正则表达式 简单来讲,正则表达式是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的 ...

  6. JavaWeb黑马旅游网-学习笔记07【旅游线路查询】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...

  7. MIPS汇编语言学习笔记07:打印双精度浮点数

    课程原视频: https://www.bilibili.com/video/BV19J411y7pA?p=7 程序功能: 设定两个双精度浮点型数据,将其相加后打印输出. 代码: .datamyDoub ...

  8. Makefile学习笔记07|编译静态库并通过ifeq语句

    Makefile学习笔记07|编译静态库并通过ifeq语句   希望看到这篇文章的朋友能在评论区留下宝贵的建议来让我们共同成长,谢谢.   这里是目录   本篇与上一篇有较多联系,有兴趣的可以先看上一 ...

  9. 【计算机网络学习笔记07】PPP协议、IP编址、NAT技术

    [计算机网络学习笔记07]PPP协议.IP编址.NAT技术 一.PPP协议 是TCP/IP网络中最重要的点到点的数据链路层协议. 1 PPP协议的组成 1)链路控制协议:建立并维护数据链路连接(身份验 ...

最新文章

  1. 教你搭建多变量时间序列预测模型LSTM(附代码、数据集)
  2. 传说中的贝叶斯统计到底有什么来头?
  3. php的miss路由,ThinkPHP6.0 MISS路由 - ThinkPHP6.0快速开发手册(案例版) - php中文网手册...
  4. RedHat/CentOS发行版本号及内核版本号对照表
  5. 基于Tomcat5.0和Axis2开发Web Service应用实例
  6. 近期几个ASP.NET开发经验(二)
  7. Android 取得 ListView中每一个Item项目的值
  8. python head 函数_python爬虫中header是什么?怎么用?
  9. scratch的积木相与java的_scratch课堂:积木块详解
  10. python——zip()、map()、enumerate()、filter()、apply函数
  11. html mysql 数据列表_html的列表加载数据库
  12. 《JavaScript权威指南》学习笔记 第三天 找个对象
  13. 模块三 day22 并发编程(上)
  14. 如何显示 word 左侧目录大纲
  15. 云知声 Atlas 超算平台:基于 Fluid + Alluxio 的计算加速实践
  16. linux中ipa服务器搭建,Mac搭建内网服务器无线安装ipa包
  17. PHP练习6 使用MySQL实现简单身份验证
  18. STM32智能门锁学习二,RFID刷卡解锁
  19. 指法练习软件需求说明书
  20. Java基础:IO编程

热门文章

  1. 问号和点运算符是什么? 在C#6.0中意味着什么?
  2. 带前端脚本的html页面,2.从头学前端之如何在html中使用javascript
  3. angularjs笔记,基本指令,字符串反转,过滤器
  4. Autowired,Qualifier,Spring 按名称注入bean属性
  5. 用回溯法求子集和的c++代码
  6. git:关联github和本地仓库
  7. ❤️六万字《Spring框架从入门到精通》(建议收藏)❤️
  8. 盒子阴影(HTML、CSS)
  9. 那些年开发中遇到的坑。。。
  10. mybatis 依赖于jdbc_第1章 MyBatis快速入门