OC 方法查找问题

2020-12-31 11:21:03 +08:00
 bloomy8

比如一个类 A 里有个 delegate<protocol>属性,protocol 规定了- (void)test,我是不是也完全可以用一个类对象 B 来做这个 delegate,然后实现 + (void)test,这样是不是 A 也可以正常调用到 B 的+ (void)test 方法 因为我看无论是 SEL 还是方法签名,前面是-或者+都不会影响,所以应该不会因为我实现的是类方法而查找不到吧

1977 次点击
所在节点    iDev
2 条回复
plumk
2020-12-31 11:26:50 +08:00
你可以试试啊,你提问的功夫代码都写完运行完了
而且 runtime 里面有 2 个方法
class_getClassMethod
class_getInstanceMethod

一个获取类方法 一个获取类实列方法
bloomy8
2020-12-31 11:29:54 +08:00
@plumk 也是,我没试 delegate calling,只试了 SEL 和方法签名与+ -无关

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/740569

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX