• 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: Trying to understand -- please help...
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Trying to understand -- please help...


  • Subject: Re: Trying to understand -- please help...
  • From: Bill Bumgarner <email@hidden>
  • Date: Wed, 21 May 2008 10:21:11 -0700

On May 21, 2008, at 9:49 AM, Gérard Iglesias wrote:
with an empty NSArray (not very useful, since you can't add items to
an NSArray). Then, you leak that allocated memory by setting cityArray
to an autoreleased NSArray

In fact it is not leaking, it is just creating an object for nothing, it will be released by the autorelease pool, than no leaks :)

Not quite.

The original code looked like this:

@implementation Controller
- (id) init
{
 cityArray = [[NSArray alloc] init];
 NSString *c0 = @"New York";  //Ten NSString objects created here
 ...
 NSString *c9 = @"Virginia Beach";
 cityArray = [NSArray arrayWithObjects: c0, ...c9, nil];
 return self;
}
@end

And, in fact, it would leak the initial empty NSArray instance.

(And, as others have pointed out, the second instantiation of an NSArray through the +arrayWithObjects: method returns an autoreleased object, thus leading to a crash.)

Personally, whenever I have lists of static strings like this, I move 'em into the projects Info.plist and then get a hold of the strings via [[NSBundle mainBundle] infoDictionary]. Or stick 'em in a plist file in resources. Much easier to change/maintain over time.

b.bum


_______________________________________________

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


References: 
 >Trying to understand -- please help... (From: "john darnell" <email@hidden>)
 >Re: Trying to understand -- please help... (From: "Hank Heijink (Mailinglists)" <email@hidden>)
 >Re: Trying to understand -- please help... (From: Gérard Iglesias <email@hidden>)

  • Prev by Date: Re: Trying to understand -- please help...
  • Next by Date: Re: connections and the nib lifecycle
  • Previous by thread: Re: Trying to understand -- please help...
  • Next by thread: Re: Trying to understand -- please help...
  • Index(es):
    • Date
    • Thread