Xcode Analyze 代码静态检查及问题解决

一、逻辑错误(Logic error)

1、 Access to instance variable '_myTotlaH' results in a dereference of a null pointer (loaded from variable 'self')

如果self是nil,那么你不能访问self的实例变量 _myTotlaH。所以应该引用这些变量在if self语句中,比如init方法中 当self不为nil 方可使用

Xcode Analyze 代码静态检查及问题解决_第1张图片

解决办法:将实例变量赋值移到 if(self)内
Xcode Analyze 代码静态检查及问题解决_第2张图片

2、Converting a pointer value of type 'NSNumber *' to a primitive boolean value; instead, either compare the pointer to nil or call -boolValue

类型调用错误


Xcode Analyze 代码静态检查及问题解决_第3张图片

解决办法:NSNumber 类型的page对象 在使用三目运算符时转换为 Bool类型

Xcode Analyze 代码静态检查及问题解决_第4张图片

二、内存地址错误(Memory errorr)

1、nil returned from a method that is expected to return a non-null value

一个非空对象返回了 nil

Xcode Analyze 代码静态检查及问题解决_第5张图片

解决办法: 添加非空对象

返回不能为空的Array


Xcode Analyze 代码静态检查及问题解决_第6张图片

添加非空判断,防止初始化失败情况


Xcode Analyze 代码静态检查及问题解决_第7张图片

三、无效数据(Dead store)

例如 Unused、Never read 等情况
初始化的数据 Never read


Xcode Analyze 代码静态检查及问题解决_第8张图片

解决:
Xcode Analyze 代码静态检查及问题解决_第9张图片

你可能感兴趣的:(Xcode Analyze 代码静态检查及问题解决)