将指针变量作为参数传递给其他方法时,不会增加其指向对象的引用计数。所以归根结底还是看是否有无retain、new、alloc,以及看是否与release、autorelease配对使用。...
分类:
移动开发 时间:
2014-10-10 14:10:14
阅读次数:
275
cocos2d-x 3.1.1源码阅读过程的注释
Ref
每个类的基类是Ref 也就是2.0的CCObject 调用继承下来的下面的那个函数
class CC_DLL Ref
{
public:
/**
引用计数+1
*/
void retain();
{
CCASSERT(_referenceC...
分类:
其他好文 时间:
2014-10-10 02:17:44
阅读次数:
387
1 Objective-C提供了几种内存管理方式?请详细举例谈谈你对objective-C的内存管理策略的理解。答:两种,ARC和手动管理(retain 、release 或autorelease)。1.new,alloc和copy方法创建一个对象时,该对象的保留计数器值为1.不再使用该对象时,要负...
分类:
移动开发 时间:
2014-10-09 16:59:47
阅读次数:
169
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------@property和ARC@property和ARC都是编译器特性,系统会帮我们自动生成代码property参数1.set方法内存管理相关的参数 retain : release旧值,retain新...
分类:
其他好文 时间:
2014-10-08 00:42:34
阅读次数:
324
CCObject、ref、Director、Autorelease、PoolManager、scene渲染树 cocos2dx两个版本内存管理分析,实现程序员的版本迭代。
所以每次执行完clear,Manager中除了渲染树和_referenceCount>1都会被清理掉;可是pool被清理之后_referenceCount>=1的内存就如渲染树般泄露了,这个时候就需要我用自己release(delete)了。为什么会出现这样子的情况呢,实际上源于早前兼容ObjectC的代码继承过来的管理机制,可能之后Po...
分类:
其他好文 时间:
2014-10-06 19:13:10
阅读次数:
326
CCTargetedTouchDelegate 的继承 和 dynamic_cast想写个可以响应touch的sprite类定义成了这个样子:[cpp]view plaincopyclassGemBoard:publicCCSprite,CCTargetedTouchDelegate然后注册touc...
分类:
其他好文 时间:
2014-10-05 12:21:38
阅读次数:
140
一.set方法内存管理当一个对象拥有另一个对象的属性时,需要在set方法对当前所拥有的对象做retain操作,因为你的属性是指向了另一个对象,需要让另一个对象知道有单元在使用我。但是这样写的话不够完善,会出现新的问题。如果对象属性之前已经指向了某一个对象了,此时再传进来一个新的对象,属性指针就指向了...
分类:
其他好文 时间:
2014-10-04 11:53:46
阅读次数:
262
在模拟器上调试时,经常遇到内存访问错误,如下:2012-02-14 11:21:11.41 App[2433:205] *** -[Test retain]: message sent to deallocated instance 0x11e4fb1.在设置了MallocStackLogging之...
分类:
其他好文 时间:
2014-10-01 03:41:00
阅读次数:
287
多GPU设备处理点积示例,项目打包下载 1 /* 2 * Copyright 1993-2010 NVIDIA Corporation. All rights reserved. 3 * 4 * NVIDIA Corporation and its licensors retain all...
分类:
其他好文 时间:
2014-09-28 20:10:25
阅读次数:
223
本次重点:data步循环与控制
涉及:if/then/else语句,select语句,do语句,continue语句,leave语句
1.if then else 语句
高效率的if应用:
1)
If x=1 then y=1;
Else if x=2 then y=2;
Else y=3;
对于每一个数据集的观测,if-then-else只会判...
分类:
其他好文 时间:
2014-09-28 10:49:01
阅读次数:
265