为NSURLSessionDownloadTask静默未实现的协议方法警告



我试图找出如何抑制编译器警告的委托方法,我没有使用的目的。我知道我可以有一个空的方法体,但我仍然想找到一种方法来不这样做,所以它是更少的代码在我的源代码。

我看到这个答案在这里:动态转发:suppress Incomplete Implementation警告

但这似乎使问题过于复杂了。有没有办法在我的viewcontroller。h的头文件中只有一行,这样我就不会看到这个警告了?

感谢你的帮助。

为了记录,我想要沉默这个方法的警告:

- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
                                  didResumeAtOffset:(int64_t)fileOffset
                                 expectedTotalBytes:(int64_t)expectedTotalBytes;

缺少REQUIRED协议方法警告永远不应该静音。

如果它是一个可选方法,它将被标记为这样,不会引起警告。因为它是必需的,你不包含它只是在要求崩溃。

如果被委托的对象试图在它的委托上调用这个方法,而你只是简单地抑制了警告而不是适当地包括它(因为它被标记为required),你的应用程序将崩溃并产生unrecognized selector异常。

如果你想静音警告,如果你真的不想做任何事情,就把这个方法包含进去,让它空着。

例如:

- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didResumeAtOffset:(int64_t)fileOffset expectedTotalBytes:(int64_t)expectedTotalBytes {};

一个班轮。

最新更新