我想检查一下我对这个例子中关于选择器的理解:
假设我在 Bar.m 中有一个名为 arrNSArray
的对象。Foo
在 Foo.m 中,我有一个(NSComparisonResult)compareFoo:
方法,但我忘记在 Foo.h 文件中声明。然而,当我调用[arr sortedArrayUsingSelector:@selector(compareFoo:)];
代码时运行良好。这是因为消息compareFoo:
被发送到数组中的对象,这些对象是Foo
对象,所以compareFoo:
即使它没有在 Foo.h 中声明,它们也可以调用?
对此不是100%确定并且很好奇。谢谢!