tech::hexagram

personal note for technical issue.

Objective-Cについて、後で調べたいこと

不思議な挙動だなと思ったことがあったので書いておく。

現象

@implementation ListClass

- (NSInteger)indexOfObjectWithBaseClass:(BaseClass *)baseClass
{
    NSUInteger index = [self.list indexOfObject:baseClass];
    return (NSInteger)index;
}

@end


@interface extendClass : baseClass
@end

こういった状態になっている時に、 ListClass#indexOfObjectWithBaseClassextendClassを引数として渡しても、内部ではextendClassとして解釈されるらしい。

調査結果

あとで書く

まとめ

あとで書く