Onl*_*Cop 1 facebook objective-c
我今天从https://github.com/facebook/facebook-ios-sdk.git克隆,并注意到代码中有两个有这个结构的位置:
(id) init {
if ((self == [super init])) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
我希望self在这里被分配,而不是为了平等而进行测试:
(id) init {
if ((self = [super init])) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
或者至少:
(id) init {
self = [super init];
if (self) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
这是在src/FBDialog.m和sample/Hackbook/Hackbook/DataSet.m.
(对不起,如果这应该在bug跟踪器中 ;找不到实际提交任何东西的方法......: - /
小智 6
它应该分配自己,因为[super init]可能会返回一个不同于自己的对象.
检查相等性通常会起作用,但不需要工作.你应该总是分配.
我相信最近版本的clang甚至会==在这个特殊情况下使用时发出警告.
| 归档时间: |
|
| 查看次数: |
184 次 |
| 最近记录: |