首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

项目运用Build And Analyze分析常见提示

2012-06-27 
项目使用Build And Analyze分析常见提示1,Incorrect decrement of the reference count of an object that

项目使用Build And Analyze分析常见提示

1,Incorrect decrement of the reference count of an object that is not owned at this point by the caller

AttrTable = [[AttrTable node] initAttrTable];

?

其中node已经创建并初始化了,不需要再调用initAttrTable。如果要调用initAttrTable需改为

[[[AttrTable alloc] initAttrTable] autorelease]

?

这种问题一般就是变量申请了内存并初始化了,但没有使用此变量,接着将此变量又重新赋值。如下:

NSString *imageString = [[NSString alloc] init];imageString = @"HResout";

?

2,Value stored to 'isHD' is never read

变量isHD没有使用


3,Potential leak of an object allocated on line 226 and stored into 'smallclassname'

潜在的内存泄露点

NSString *smallclassname = [[NSString alloc] initWithString:[NSString stringWithFormat: @"%d",m_NpcClass]];

?

创建变量的时候尽量使用静态创建,因为静态方法都添加了anturelease,若使用alloc,init时后面最好加上autorelease


4,Pass-by-value argument in function call is undefined

CGFloat x,y;CGFloat w,h;w = [backSprite boundingBox].size.width;h = [backSprite boundingBox].size.height;myRect = CGRectMake(x, y,w ,h );

?


使用方法CGRectMake时,变量要初始化。代码里的x,y没有赋值。


5,Receiver in message expression is a garbage value

UIColor* tempCol;if (level==4) {    tempCol= [[UIColor alloc] initWithRed:0.39f green:0.82f blue:0.32f alpha:1.0f];}else if (level==5) {    tempCol= [[UIColor alloc] initWithRed:0.61f green:0.68f blue:0.83f alpha:1.0f];}else if (level==6) {    tempCol= [[UIColor alloc] initWithRed:0.90f green:0.68f blue:0.99f alpha:1.0f];}else if (level==7) {    tempCol= [[UIColor alloc] initWithRed:0.68f green:0.97f blue:0.99f alpha:1.0f];}return [tempCol autorelease];

?
被赋值的是个要回收的变量


6,Assigned value is garbage or undefined

Icon *leftTemp,*centerTemp,*rightTemp;if(isHD){    leftTemp = cell;}iconLeft = leftTemp;iconCenter = centerTemp;iconRight = rightTemp;

?

变量没有初始化就赋值给其他变量时会出现这个提示。即使有条件语句也会有提示。


遇到的就这么多,继续ing。。。

?

非常有用,谢谢了。

热点排行