Objective-C および XCode (4.4) の最新バージョン。
コード スニペットがあり、なぜいくつかの行を使用できるのか理解できません。説明させてください。
// For understanding purpose : (NSMutableArray*)_programStack
id l_topItemOnStack = [_programStack lastObject];
if([l_topItemOnStack isKindOfClass:[NSNumber class]])
{
return [l_topItemOnStack doubleValue];
}
私の質問: myl_topItemOnStack
は型id
であり、それを a にキャストしなかったため、 .NSNumber
をどのように使用できますか?[l_topItemOnStack doubleValue]
NSNumber メソッドにアクセスするには、最初に NSNumber にキャストする必要があると思いました...
ここで何が欠けていますか?