views:

54

answers:

2

Can anyone tell me why logging [self.giftees count] keeps returning 0 even though I'm adding objects to it?

header:

#import <UIKit/UIKit.h>

@interface Test2AppDelegate : NSObject <UIApplicationDelegate>  
{
    UIWindow *window;
    NSMutableArray *giftees;
}

@property (nonatomic, retain) UIWindow *window;
@property (nonatomic, retain) NSMutableArray *giftees;

@end

called from didFinishLaunchingWithOptions:

- (void)bootstrapGiftees
{
    NSArray *gifteeNames = [NSArray arrayWithObjects:@"Jesse",,nil];

    for (NSString *gifteeName in gifteeNames)
    {
        GifteeModel *g = [[GifteeModel alloc] init];
        g.name = gifteeName;

        [self.giftees addObject:g];
        NSLog(@"giftees count = %d", [self.giftees count]);
        [g release];
}
}
+2  A: 

Is "giftees" initialized? If it is nil, [giftees count] will return 0 as well

Gobra
thanks very much
Jesse Pepper
+2  A: 

Because you most probably never initialized the giftees array at all, so it is still nil when that code runs.

Eiko
thanks a lot Eiko
Jesse Pepper