摘要:
内存管理一直是令C++程序员最头疼的工作,C++继承了C那高效而又灵活的指针,使用起来稍微不小心就会导致内存泄露、野指针、越界访问等访问。虽然C++标准提供了只能指针std::auto_ptr,但是并没有解决所有问题。boost的smart_ptr库是对C++98标准的绝佳补充。它提供了六种智能... 阅读全文
摘要:
最近开了boost库的学习,就先从日期时间库开始吧,boost的date_time库是一个很强大的时间库,用起来还是挺方便的。以下算是我学习的笔记,我把它记录下来,以后便于我复习和查阅。#include#include#includeusing namespace std;using namespa... 阅读全文
摘要:
最近想在win7上配置eclipse+cocos2dx开发环境,在安装之前一定要注意每项是32位还是64位,我选择的都是64位版本的,闲话少叙我们开始安装吧!1、下载cocos2dx,我选择的是cocos2d-x-2.2.4,解压出来以后可以发现一个build-win32.bat文件,以前用coco... 阅读全文
摘要:
今天看了下ccocos2dx touch事件部分的源码,从CCTouch、CCTouchHandler和CCTouchDispatcher简单的做了分析和总结,先直接看源码吧!1、CCTouchclass CC_DLL CCTouch : public CCObject{public: CCT... 阅读全文
摘要:
今天想探索一下cocos2dx的内存管理,我们就先从CCObject开始吧class CC_DLL CCObject : public CCCopying{public: // object id, CCScriptSupport need public m_uID unsigned i... 阅读全文
摘要:
MyScrollItem是CCScrollView容器内项的接口,MyScrollView主要处理添加子节点和事件的处理,MyScrollViewTestItem是对MyScrollItem实现的测试项,MyScrollViewTest测试类/*MyScrollView.h*/#ifndef _MY_SCROLL_VIEW_#define _MY_SCROLL_VIEW_#include "cocos2d.h"#include "CCScrollView.h"#include "ExtensionMacros.h"using name 阅读全文
摘要:
#include using namespace std;struct node{ int index; char name[20];};node data[100];templatevoid QuickSort(T* Array,int left,int right,bool (*com)(T* a,T* b)){ int low,high; T key; if(left>=right) return; low=left,high=right; key=Array[left]; while(low=*b;}bool com1(node* a,node* b){ return a-> 阅读全文
摘要:
思路:1、将原序列seq[]的下标按照seq[]的值升序排序存入res[]中。2、假如我们知道res[j]的后面小于res[j]的数的个数x的话,那么res[j]需要交换的次数为j-res[j]+x;(自己推一下就知道)。3、如何求x呢?我们可以用树状数组sum[]来统计res[]从后往前处理过的数。4、求和累加j-res[j]+x;(j从n-1到0)#include<cstdio>#include<iostream>#include<algorithm>using namespace std;#define MAX 500010 int seq[MAX], 阅读全文
摘要:
题意:给出编号1~n的奶牛,是乱序的并且给出了每一个奶牛前小于自己序号的奶牛数目。输出奶牛的正确位置。假设第i个奶牛的高度(就是指前面的小于自己序号的奶牛的数目)为Ai。因此第n个奶牛的序号必然是Ai+1。然后我们将这个奶牛砍掉,那么第n-1个奶牛就可以根据它的高度和已经判断出的第n个奶牛来确定。推出一般的情况:我们用Ck来保存1~k中确定的奶牛数(也就是我们砍掉的奶牛),因此还没有砍的奶牛数为(k-Ck);在倒序处理的过程中,对于奶牛j,其高度为Aj+1,我们只要找出这样的k就行了:Aj+1==k-Ck。k-Ck代表了什么意思呢?其实就是在排好序的奶牛序列中,把已经确定的牛砍去之后k的高度。 阅读全文
摘要:
简单树形DP,父节点要么去要么不去;res[i]=max(∑res[child[i]],∑res[child(child[i])]);#include<iostream>#include<cstdio>#include<cstring>using namespace std;struct node{ int i,next;}vert[201];char name[201][20];int head[201],res[201],go[201],nogo[201],N,count;int find(char * str){ int i; for(i=1;i< 阅读全文