gpt4 book ai didi

objective-c - 禁用实例方法未找到警告

转载 作者:太空狗 更新时间:2023-10-30 03:54:54 25 4
gpt4 key购买 nike

我目前正在开发一个 NSProxy 子类,它会拦截某些消息并且从不将它们转发给任何人而只是处理它们,因此这些方法从未真正存在过。问题来了,显然编译器开始提示缺少方法实现,我不知道如何停止它,向接口(interface)添加 stub 方法只是为了让编译器闭嘴是行不通的,因为这些方法是任意形成的,我不知道它们(为了更具体一点,我要求 this 项目)。

理想情况下,我想告诉编译器它根本不应该为这个特定的类做任何方法检查,但由于这似乎不太可能,我也很高兴 #pragma 或任何其他方式(不包括为整个项目/文件中的每个警告关闭编译器!)

最佳答案

您的 switch 语句并不是真正任意的,它们只是可以具有任意长度。对于大量的长度,您可以继续声明它们以使编译器受益(然后您将进行错误检查,如果您只是关闭警告则不会)。例如:

typedef void (^ObjCCaseBlock)();

@interface NSObject ()
- (id)switch;
- (void)case:(NSString*)a :(ObjCCaseBlock)b;
- (void)case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b;
- (void)case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b;
@end

重复尽可能多的级别(如果遇到问题,您可以添加级别)。这有点乏味,但并不困难。

关于objective-c - 禁用实例方法未找到警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9708296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com