• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Objective-C Question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Objective-C Question


  • Subject: Re: Objective-C Question
  • From: Mike Abdullah <email@hidden>
  • Date: Mon, 11 Mar 2013 20:26:44 +0000

On 11 Mar 2013, at 20:21, Dave <email@hidden> wrote:

> Hi,
>
> Take the following example:
>
> @interface BaseClass
>
> +(NSMutableDictionary*) newDict;
>
> @end
>
> @implementation BaseClass
>
> +(NSMutableDictionary*) newDict
> {
>
>
> return [[NSMutableDictionary alloc] init];
> }
>
>
> @class NewClass;
>
> @interface NewClass : BaseClass
>
> +(NSMutableDictionary*) newDict;
>
> @end
>
> #import "BaseClass.h"
>
> @implementation NewClass
>
> +(NSMutableDictionary*) newDict
> {
> NSMutableDictionary*	myDict;
>
> myDict = [[super class] newDict];
> [myDict setObject:@"Some Data" forKey:@"someKey"];
>
> return [[NSMutableDictionary alloc] init];
> }
>
> @end
>
>
>
>
> 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]


_______________________________________________

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


  • Follow-Ups:
    • Re: Objective-C Question
      • From: Dave <email@hidden>
References: 
 >Objective-C Question (From: Dave <email@hidden>)

  • Prev by Date: Objective-C Question
  • Next by Date: Objective-C Question
  • Previous by thread: Objective-C Question
  • Next by thread: Re: Objective-C Question
  • Index(es):
    • Date
    • Thread