在我的适用于iOS 5和6的应用中,我有if
声明:
NSInputStream *inputStream = [NSInputStream inputStreamWithFileAtPath:sourcePath];
if ([inputStream streamStatus] == NSStreamEventErrorOccurred){
[...]
}
在iOS 7上,我收到以下警告:
Comparison of constant 'NSStreamEventErrorOccurred' with expression of type
'NSStreamStatus' (aka 'enum NSStreamStatus') is always false
关于iOS 7关于NSInputstream
课程的变化的任何想法?我想知道为什么我现在在iOS7上收到此警告。
答案 0 :(得分:17)
iOS 7更适用于枚举比较。问题是您将NSStreamStatus枚举值与另一个不相关的NSInputStreamEvent值进行比较。相反,尝试:
NSInputStream *inputStream = [NSInputStream inputStreamWithFileAtPath:sourcePath];
if ([inputStream streamStatus] == NSStreamStatusError){
[...]
}
此问题与iOS 7本身无关,这只是您现在发现的一个问题,这要归功于更细致的警告。