我加入了下面这个类:
#import "NSNull+NullCast.h"
@implementation NSNull (NullCast)
- (float)floatValue
{
return 0.0;
}
- (double)doubleValue
{
return 0.0;
}
- (int)intValue
{
return 0;
}
- (int)integerValue
{
return 0;
}
在iPhone5s-ios8.1报错如下:
Multiple methods named 'integerValue' found with mismatched result, parameter type or attributes
可是奇怪的是iPhone5-ios8.1却顺利编译通过。
一样的操作系统,难道机型不一样也不行?看报错是ARC报错
能理解你的意思,不過還是把
integerValue
這個方法去掉吧,不太安全。雖然開放的介面裡沒有這個方法,但這個類別有可能實作了這個私有方法。所以編譯的時候還是可能會出問題。現在看貌似intValue
暫時沒有問題。