上一页 1 ··· 8 9 10 11 12 13 下一页
摘要: pimpl 模式(Private Implementation),我们常常听到诸如“不要改动你的公有接口”这样的建议,所以我们一般都会修改私有接口,但是这会导致包含该头文件的所有源文件都要重新编译,这会是个麻烦事儿。Pimpl机制,顾名思义,将实现私有化,力图使得头文件对改变不透明。桥接模式(bri... 阅读全文
posted @ 2015-02-06 22:27 sdlwlxf 阅读(2171) 评论(0) 推荐(0) 编辑
摘要: Scitools出品的Understand 2.0。用了很多年了,比Source Insight强大很多。以前的名字叫Understand for C/C++,Understand for Java,Understand for Ada,最近这几年合并成了一个产品。最值得一提的是各种关系图的绘制,以... 阅读全文
posted @ 2015-02-06 21:29 sdlwlxf 阅读(9894) 评论(0) 推荐(1) 编辑
摘要: 因为cocos studio UI 1.6.0.0版本没有自动修改默认导出路径的功能,新建项目后默认导出的路径还是上一个项目的,每次导出都要重新设置路径很麻烦。于是考虑是否可以找到默认配置文件,终于还是找到了打开C:\Users\Administrator\Documents\CocosStudio... 阅读全文
posted @ 2015-01-14 14:51 sdlwlxf 阅读(473) 评论(0) 推荐(0) 编辑
摘要: '/Q' 不是内部或外部命令,也不是可运行的程序1> 或批处理文件。1> 'y' 不是内部或外部命令,也不是可运行的程序1> 或批处理文件。1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon... 阅读全文
posted @ 2015-01-14 13:40 sdlwlxf 阅读(1064) 评论(0) 推荐(0) 编辑
摘要: 策略模式的精要之处就是类的组合,与类的继承不同,它将类的不同功能各自用不同的类来实现,而不是方法,这些功能都有一个特点,就是需要经常更改,易变的功能用一个抽象基类或接口来表示,然后把功能的每个不同的算法实现拓展成它的子类。这样做的最大好处就是可以实现功能的动态改变,将功能的添加用其他方法实现,极大地提高了代码的灵活性。而且一个事物对象本来就是由不同的部分组成的,用继承很难很好的实现事物之间的差异性,所以,事物的主要关系用继承实现,差异比较大的功能模块用类的组合来实现,可以更好的反应事物之间的联系与区别。 阅读全文
posted @ 2013-04-16 23:54 sdlwlxf 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 举例说明char *p, *q;声明p和q字符指针p = "xyz";p的值赋为一个指向由'x'、'y'、'z'和'\0'4个字符组成的数组的起始元素的指针。q = p;p和q现在是两个指向内存中同一个地址的指针。因此我们作如下操作q[1] = 'Y';q和p指向的内存中存储的字符串都是同一个'xYz'; 阅读全文
posted @ 2013-01-05 22:09 sdlwlxf 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 举几个有代表性的例子比如int *a[2];a与[2]结合,说明a是一个有两个元素的数组,再与*结合,说明数组中两个元素都是指针,最后与int结合,说明指针指向的都是int类型整数。a的类型是int *[2]。int (*b)[2];b与*结合,说明b是一个指针,再与[2]结合,说明该指针指向的是一个有两个元素的数组,最后与int结合,说明该数组的元素都是int类型的整数。b的类型是int (*)[2]。int *g();g先与()结合,说明g是一个函数,然后与*结合,说明g这个函数返回的是一个指针,最后与int结合,说明返回的指针指向的是整形数。g的类型是int *()。int (*h)() 阅读全文
posted @ 2013-01-03 13:57 sdlwlxf 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 右图中圆圈代表指针,箭头代表它指向某个元素。定义多维数组int a[3][2];它的逻辑结构可以理解为右图。图中上层数组存储的是3个指向二维数组的指针。所以如果我们做如下操作:int *p;p = a;会出现严重错误原因是:a是指向一个元素为数组的数组,而p是指向一个元素为整形int的数组,这样做强制转换显然是非法的。 阅读全文
posted @ 2013-01-03 13:40 sdlwlxf 阅读(223) 评论(0) 推荐(1) 编辑
摘要: C陷阱与缺陷中关于数组与指针部分做了清晰的讲解,解除了我对于数组的很多困惑。特摘取部分内容以作记录。难点一:定义数组 int a[3];除了a被用作运算符sizeof的参数这一情形,在其他所有的情形中,数组名a都代表指向数组a中下标为0的元素的指针。个人理解为右图的逻辑结构(在实际内存中不一定如此)因此,我们不难得出一个推论,*a即数组中下标为0的元素的引用。例如,我们可以这样写*a= 84;这个语句将数组a中下标为0的元素的值设置为84。同样道理,*(a+1)是数组a中下标为1的元素的引用,依次类推。概而言之,*(a + i)即数组a中下标为i的元素的引用;这种写法是如此常用,因此他被简记为 阅读全文
posted @ 2013-01-02 15:55 sdlwlxf 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 如果将 myObject 用作 Dictionary 对象中的键,则会创建对原始对象的另一个引用。例如,下面的代码创建两个对象引用(myObject 变量和 myMap 对象中的键):import flash.utils.Dictionary;var myObject:Object = new Object();var myMap:Dictionary = new Dictionary();myMap[myObject] = "foo";若要使 myObject 引用的对象能够进行垃圾回收,您必须删除对它的所有引用。在此情况下,必须更改 myObject 的值并从myMap 阅读全文
posted @ 2012-12-28 19:38 sdlwlxf 阅读(218) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 下一页