警告:常量8与XXXX类型表达式的比较始终为false

yel*_*low 8 comparison warnings objective-c nsstream asihttprequest

ASIHTTPRequest在我的项目中使用过,但是在文件ASIDataCompressor.m行中190:

if ([inputStream streamStatus] == NSStreamEventErrorOccurred) {
        if (err) {
            *err = [NSError errorWithDomain:NetworkRequestErrorDomain code:ASICompressionError userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSString stringWithFormat:@"Compression of %@ failed because we were unable to write to the destination data file at %@",sourcePath,destinationPath],NSLocalizedDescriptionKey,[outputStream streamError],NSUnderlyingErrorKey,nil]];
        }
        [compressor closeStream];
        return NO;
    }
Run Code Online (Sandbox Code Playgroud)

它警告我:

警告

谁知道怎么修它?谢谢

nie*_*bot 17

(NSStreamStatus)NSStreamEventErrorOccurred

编辑

也许来处理这个正确的做法是,以取代NSStreamEventErrorOccurredNSStreamStatusError.这可能是ASIHTTP的作者所期望的.


Joe*_*Joe 6

NSStreamEventErrorOccurredNSStreamEvent具有常数值的类型8.该streamStatus方法返回一个NSStreamStatusnot NSStreamEvent,NSStreamStatus值不超过一个值,7这就是你得到错误的原因.你很幸运,8超出界限,你得到一个错误,因为并非总是如此,因此,你应该始终谨慎的返回类型.