02 2012 档案
摘要:*****************************不要过度修饰和过于求精而毁损完好的程序。它也许不完美,但不用担心:它不可能完美。*****************************对于正交设计,有一种简单的测试方法,一旦设计好组件,问问你自己:如果我显著地改变某个特定功能背后的需求,有多少模块会受影响?在正交系统中,答案应该是1个。让你的代码保持解耦 避免使用全局数据 避免编写相似的函数*****************************abstractions live longer than details*****************************so
阅读全文
摘要:使用指针访问数组元素c++语言中,指针和数组密切相关。*****************************int ia[] = {0,2,4,6,8};int *ip = ia;// ip points to ia[0]*****************************指针的算数操作与其使用下标操作,倒不如通过指针的算数操作来获取指定内容存储地址。指针的算数操作和迭代器的算术操作以相同的方式实现。使用指针的算数操作在指向数组某个元素的指针上加上或减去一个整数数值就可以计算出指向数组另一个元素的指针值:*****************************ip = ia;int
阅读全文
摘要:概念弧度 角度定义:弧长为半径的狐,其所对的圆心角为1弧度。(两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段狐。当这段弧长正好等于圆的半径时,两条射线的夹角的弧度为1)根据定义:一周的弧度为 2πr/r = 2π,360°角 = 2π弧度。cocos2d里面顺时针方向为正,cocos2d以左下角为(0,0)点要分清楚两个角度,1.物体旋转的角度2.两个点形成的直线和x的夹角求tan值的时候不要管正负都按正值算,再在在四个象限分别求物体旋转的角度***************************** double len_y = pos.y - start_pos.y; d
阅读全文
摘要:语法#和##字符#右边的宏参数转换为字符串*****************************#define str(a)#astr(1+1)==>"1+1"*****************************##*****************************#define name(a) \ void get##a(){}name(F);//在main中就可以调用getF();*****************************减少重复计算gcc的扩展 vs编译不通过*****************************#defin
阅读全文
摘要:第一次知道这个词,是在高中,物理老师将变压器的原件的时候。 今天做android游戏的push功能时,我想要的是开机的时候启动服务,当然还要使用游戏中数据存储层的原件,不过用了几次,游戏启动的时候调用是没问题的。当游戏没启动(即没做一系列的初始化工作),这项任务确总完成不了!我知道由于存储组件的各个类耦合太严重,模拟一个类似游戏启动时初始化的过程非常复杂也非常没有必要,我要的仅仅是一个字段而已。write by fgd
阅读全文
摘要:如果必须分开定义指针和其所指向的对象,则将指针初始化为0.因为编译器可检测出0值的指针,程序可以判断该指针并未指向一个对象。c++提供了一种特殊的指针类型void*,它可以保存任何类型对象的地址c++保证:删除0值的指针是安全的。删除指针后,该指针变成悬垂指针。悬垂指针指向曾经存放对象的内存,但该对象已经不存在了。一旦删除了指针所指向的对象,立即将指针设置为0,这样就非常清除的表面指针不再指向任何对象。指向const对象的指针:cosnt double *cptr;const指针:int *const curErr = &errNumb;指向const对象的const指针 const
阅读全文
摘要:关于openfeint,baidu竟然找不到任何关于openfeint android方面的资料,只好看英文的官方文档(看了好几遍才大概了解)。让我感觉到openfeint的最大的优点就是一些配置不是在代码中配,而是在网站上配好,客户端就给你展现出来。游戏中怎么加在这里就不说了,直接看官方文档就好了,他提供的MyOpenFeintSample有点不好,容易误导人,一看界面那么丑陋,是不是还得自己写界面啊?他提供的例子只是用来让你熟悉,Openfeint的api。 c++掉java时传递long型数据时,传递的应该是java中的long也在c++中对应的应该是jlong。cocos2d::...
阅读全文
摘要:又到了选择的时候,元宵节,公交遇贼,钱包里的身份证银行卡,统统被偷;被偷了,瞬间感觉“轻松了”,任何情况下我都可能回到原点,不是吗?不要担心选择必然所要做的放弃。public class ShareSupport { // when you want to use share(),firstly you should init acty. public static Activity acty; public static void share() { new Thread(new Runnable(){ @Override ...
阅读全文
摘要:1 for(vector<Enemy*>::iterator it = enemy_vector_.begin();it != enemy_vector_.end();++it) {2 enemy_vector_.erase(it);3 //CCLog("%d num",enemy_vector_.size());4 it = enemy_vector_.begin();5 }vector进行erase后旧的容器会被重新整理成一个新的容器,it迭代器失效,变成一野指针。所以erase后,要赋给it一个新的迭代器。 回过头来看上面...
阅读全文