03 2012 档案

摘要:*****************************在csdn上看到一篇责任链的文章,用c++给他重写一遍自己也学习下。*****************************class Handler {protected: Handler *successor;public: void SetSuccessor(Handler *suc) { successor = suc; } virtual void HandleRequest(int request) = 0;};class Concretehandler1 :public Handler {public: void Han 阅读全文
posted @ 2012-03-27 16:34 wen_dao_ 阅读(174) 评论(0) 推荐(0) 编辑
摘要:引子*****************************到目前为止,最喜欢的塔防游戏是《晶石保卫战》,它上面敌人的路线不是固定的,有些关卡你有很大的灵活性,你留出一条对你最有利的路线让敌人走。它的寻路机制应该是怎样的?当你不断的建造塔,敌人会重新计算新的最短路径。要是每帧都去计算最短路径那开销就太大了。它的路径点是怎样配置的?直接在tilemap中?单独在json中配置由于点数众多那就太麻烦了。***************************** 阅读全文
posted @ 2012-03-26 18:26 wen_dao_ 阅读(160) 评论(0) 推荐(0) 编辑
摘要:*****************************char *p[4],为指针数组char (*p)[4],为数组指针**********************************************************关于观察者模式和manager很类似。do not call me, i will call you.*****************************class ObserverInterface {public: bool is_changed_; ObserverInterface(bool is_changed):is_changed_(i 阅读全文
posted @ 2012-03-20 10:42 wen_dao_ 阅读(279) 评论(0) 推荐(0) 编辑
摘要:csdn上一道面试题:十进制整数,计算对应的二进制数包含多少个1,用位操作。*****************************int n = 95625; int m = 1; int num = 0; for (int i = 0;i < sizeof(int)*8;i++) { int temp = n & m; m = m << 1; if (temp != 0) { num++; } } cout << num << endl;*****************************让1不断移位去判断与其对应位置是否为1若是有 阅读全文
posted @ 2012-03-15 15:46 wen_dao_ 阅读(130) 评论(0) 推荐(0) 编辑
摘要:在北京没带教科书,只好baidu平面向量基本定理平面向量基本定理向量的几何表示有向线段的要素:起点,方向,长度。长度为零的向量为零向量,单位向量为一长度单位。方向相同或相反的非零向量为平行向量。如果e1和e2是同一平面内的两个不共线向量,那么该平面内的任一向量a,存在唯一有序实数(x,y),使a=xe1+ye2。这里e1和e2称为这一平面内所有向量的一组基底,e1、e2称为基向量。以向量的方法解释非直角坐标系,固有的直角坐标系思维导致很难去理解非直角坐标系。平面向量基本定理的实质及作用此定理其实说明了平面向量可以沿任意指定的两方向分解,同时也说明了由任意两向量可以合成指定向量,即向量的合成与分 阅读全文
posted @ 2012-03-14 17:26 wen_dao_ 阅读(789) 评论(0) 推荐(0) 编辑
摘要:JSON(javascript object notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于javascriptprograming language,standard ECMA-262 3rd Edition -December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特征使JSON成为理想数据交换语言。JSON建构于两种结构:1."名称/值"对的集合(A collection of n 阅读全文
posted @ 2012-03-14 15:43 wen_dao_ 阅读(257) 评论(0) 推荐(0) 编辑
摘要:1、数组a[N],存放了1至N-1个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(N)函数*****************************int do_dup(int a[], int N) { int sum1 = 0; int sum2 = 0; for (int i = 0;i < N;i++) { sum1 += a[i]; sum2 += i; } cout << sum1 - sum2 << endl; return sum1 - sum2;}*****************************2、一语句实现 阅读全文
posted @ 2012-03-13 17:26 wen_dao_ 阅读(158) 评论(0) 推荐(0) 编辑
摘要:*****************************在有些编程语言中,函数是“第一级值”。在这些语言中,可以将函数作为函数参数传递,并把它们当作表达式的组件使用等。c++不属于这类语言,但这一点并不是显而易见的。因为对于c++程序而言,将函数作为参数传递,并把它们的地址存储在数据结构中是很常见的操作。例如,假设我们想对某个数组的所有元素都运用某个给定函数。如果这个函数有一个int参数,并且生成void类型,我们可以如下编写代码*****************************void apply(void f(int), int *p, int n) { for (int i = 阅读全文
posted @ 2012-03-12 19:19 wen_dao_ 阅读(248) 评论(0) 推荐(0) 编辑
摘要:1.能避免不必要的判断就避免,数字40转换成字符串是转换成“40”而不是“00040”,通常想到肯定要判断,但是又判断的太多,使之很复杂,其实可以让数字加100000,取字符串从第二位开始;2.自己都感觉很绕的逻辑,肯定不是好逻辑,肯定能够改进。*****************************temp = "";char buff2[7] = {0}; sprintf(buff2, "%d", (goal_score + 100000)); temp.append(&buff2[1]);************************* 阅读全文
posted @ 2012-03-07 13:40 wen_dao_ 阅读(224) 评论(1) 推荐(0) 编辑
摘要:图形定义保存在刷新缓存或帧缓存的存储器中,这里的帧是指整个屏幕。该存储器保存一组对应屏幕所有点的强度值。电子束在屏幕上逐点移动时由从刷新缓存取出的强度值控制其强度。在屏幕上画图是每次一行。每个可由电子束点亮的屏幕点成为一个像素。由于刷新缓存用来存储屏幕颜色值,因此它也称颜色缓存。除了颜色以外,像素的其他信息也存储在帧缓存中,因而不同缓存区域有时统称为“帧缓存”。对于一个简单黑白系统来说,每一屏幕点或亮或暗,因此每个像素只需要一位来控制屏幕位置上的亮度。该位取值为1,表示电子束在该位置时开通,取值为0表示电子束在该位置时关闭。高性能系统中每一个像素可多达24位,这时分辨率为1024*1024.. 阅读全文
posted @ 2012-03-03 22:16 wen_dao_ 阅读(539) 评论(0) 推荐(0) 编辑
摘要:写程序,和做其他的事情一样,一开始要学招式,模仿用招式,最后才可以谈创新谈无招;但是现在人好像都忽略了这个常识。没开始学呢,就天马行空的想,那是浅薄。*****************************我们通过CCNode的position设定元素的位置使用的是相对与其父节点的本地坐标系而非世界坐标系坐标。世界坐标系和GL坐标系一致,原点在屏幕左下角,x轴向右,y轴向上。*****************************convertToWorldSpace方法可把基于当前节点的本地坐标系下的坐标转换到世界坐标系中。*****************************c.. 阅读全文
posted @ 2012-03-01 10:52 wen_dao_ 阅读(1489) 评论(1) 推荐(0) 编辑