- 博客(10)
- 收藏
- 关注
转载 Android的用户输入处理
Android的用户输入系统获取用户按键(或模拟按键)输入,分发给特定的模块(Framework或应用程序)进行处理,它涉及到以下一些模块:Input Reader: 负责从硬件获取输入,转换成事件(Event), 并分发给Input Dispatcher.Input Dispatcher: 将Input Reader传送过来的Events 分发给合适的窗口,并监控ANR。Input Ma
2014-07-31 19:05:18 2116
转载 Android系统级深入开发输入系统
用户输入系统8.1 用户输入系统结构和移植内容 Android中,用户输入系统的结构相对简单,主要的输入硬件设备是键盘、触摸屏、轨迹球等。在Android的上层中,可以通过获得这些设备产生的事件,并对设备的事件做出响应。在Java框架和应用程序层,通常使用运动事件获得触摸屏、轨迹球等设备的信息,用按键事件获得各种键盘的信息。Android用户输入系统的基本层
2014-07-31 19:05:08 2279
转载 Cocos2d-x内存管理解析
Cocos2d-x引擎的核心是用C++编写的,那对于所有使用该引擎的游戏开发人员来说,内存管理是一道绕不过去的坎。关于Cocos2d-x内存管理,网上已经有了许多参考资料,有些资料写的颇为详实,因为在内存管理这块我不想多费笔墨,只是更多的将思路描述清 楚。一、对象内存引用计数Cocos2d-x内存管理的基本原理就是对象内存引用计数,Cocos2d-x将内存引用计数的实现放在了顶层父类C
2014-07-28 13:29:22 707
转载 Android栈分析工具
当在调试Android的时候,会遇到各种各样的崩溃问题,此时系统会打印出一些trace信息.这些信息包含当前pc及相关的栈信息.为了方便分析类似的问题.结合之前的分析工具及Android的adbs,做了进一步的改善,可以直接分析crash文件,而不用再手动指定symbols-dir. 由于博客不支持上传附件, 故把原文粘贴如下,把下面的内容拷贝到文件中,命字为stack. 在linux或者unix
2014-07-25 11:24:11 800
原创 如果我是技术面试官,我会问你这个问题!
下面内容不合适Java等高级语言程序员,如果你是Java等高级语言程序员,觉得这个问题很没有意义是正常的。#include #include using namespace std;void goodToreturn(){ long x=0; long* xp=&x;//地址+1 for(x=6;x<10;x++) cout<<"index of "<<x<<" :
2014-07-24 18:18:11 1429
转载 什么时候该使用前置声明?
首先,我们为什么要包括头文件?问题的回答很简单,通常是我们需要获得某个类型的定义(definition)。那么接下来的问题就是,在什么情况下我们才需要类型的定义,在什么情况下我们只需要声明就足够了?问题的回答是当我们需要知道这个类型的大小或者需要知道它的函数签名的时候,我们就需要获得它的定义。假设我们有类型A和类型C,在哪些情况下在A需要C的定义:A继承至CA有一个类型为C的成员变
2014-07-21 10:27:42 1688
转载 Ubuntu 12.04下的安装或更新gcc
sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get install gcc-4.7 sudo apt-get install g++-4.7
2014-07-16 15:38:05 775
转载 C++ static、const和static const 以及它们的初始化
const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间。 static表示的是静态的。类的静态成员函数、静态成员变量是和类相关的,而不是和类的具体对象相关的。即使没有具体对象,也能调用类的静态成员函数和成员变量。一般类的静态函数几乎就是一个全局函数,只不过它的作用域限于包含它的文件中。 在C++中,static静
2014-07-16 15:29:48 474
原创 在XX公司工作第二天,维护已有代码
依据《C++ More Exception》所述的规则:Rule #1: Never write using-directives in header files.Rule #2: Never write namespace using-declarations in header files.Rule #3: In implementation files, never
2014-07-15 16:56:00 904
转载 placement new和placement delete
对于Widget*pw = new Widget;共有两个函数被调用;一个是用以分配内存的operatornew,一个是Widget的默认构造函数。 假设第一个函数调用成功,第二个函数却抛出异常。步骤一的内存分配所得必须取消并恢复旧观,否则会造成内存泄露。在这个时候,客户没有能力归还内存,因为如果Widget构造函数抛出异常,pw尚未被赋值,客户手上也就没有指针指向被归还的内存。取消步骤一并
2014-07-04 20:04:25 681
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人