Re: Objective-C Question
Re: Objective-C Question
- Subject: Re: Objective-C Question
- From: Mike Abdullah <email@hidden>
- Date: Mon, 11 Mar 2013 20:45:08 +0000
On 11 Mar 2013, at 20:33, Dave <email@hidden> wrote:
>
> On 11 Mar 2013, at 20:26, Mike Abdullah wrote:
>>>
>>> I had assumed (and I thought I'd done something like this before) that the:
>>>
>>> myDict = [[super class] newDict];
>>>
>>> statement would call newDict in BaseClass???? Instead it calls the version in NewClass and goes into an infinite loop!!
>>
>> Yes. [super class] calls super's implementation of the -class method. You haven't overridden -class, so it does the same thing as [self class].
>>
>> People often make the same mistake in trying to do [super respondsToSelector…
>>
>> I'm guessing what you're really after is [[self superclass] newDict]
>>
>
> Thanks a Million, yes that's what I wanted!
>
> There isn't a
>
> -newDict
>
> method defined, so how come I didn't get a complier error?
Because your code was still calling +newDict, just not on the class you wanted.
I got a little confused by your code. Realise where I said -class up above, that should actually be +class.
As others have pointed out [super newDict] might well be what you want also/instead.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden