On Fri, Jun 6, 2008 at 9:41 PM, Jon Keon <[EMAIL PROTECTED]> wrote: > > Hi All, > > I'm having a problem with creating new instances of classes after other > instances of them have been released. > > I have a class called BaddieManager. > > In this class I have a NSMutableArray that holds instances of Baddies. > > So I create a new instance, place it my array and when the Baddies life > expires, I remove it from the array. This then causes the instance to > dealloc but then the next time I call my populateBaddies function the > whole program crashes with no error message. Any help would be greatly > appreciated. > > Thanks, > Jon > > //populate the array with baddies > -(void) populateBaddies { > > while (baddieCount < baddieLimit) { > > > //Create a new instance of my baddie > PBaddie *newBaddie = [[PBaddie alloc] init]; > //add him to the view > [gameView addSubview:newBaddie]; > //give him a reference of the manager > [newBaddie attachManagerRef:self];
What is the above method doing? I hope it is not retaining or releasing the reference it is keeping in it's dealloc method. That will cause a crash when next time this obj is accessed after releasing your *baddie object*. Normally to maintain a weak reference delegate pattern is used, where delegate is never retained or released. If you are doing that right, see if you get a crash log/stack trace or any logs in sys-console. - Vijay > > //animate him > [newBaddie animateBaddie:NULL finished:0]; > //add him to the array > [pBaddieArray addObject:newBaddie]; > //release the temp variable > [newBaddie release]; > //increment the count > baddieCount = [pBaddieArray count]; > > } > > } > > //Removes the Baddie from the array and destructs him > -(void) removeMe:(PBaddie *) pBad { > > //remove from the game view - we don't want to see it anymore > [pBad removeFromSuperview]; > > //remove the baddie from the array (Causes the Baddies dealloc > method to fire) > [pBaddieArray removeObject:pBad]; > //update the count > baddieCount = [pBaddieArray count]; > > } > _______________________________________________ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > 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: > http://lists.apple.com/mailman/options/cocoa-dev/vijay.malhan%40gmail.com > > This email sent to [EMAIL PROTECTED] > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]