Objective C Array and Object Release

Posted by david on Stack Overflow See other posts from Stack Overflow or by david
Published on 2010-03-12T18:22:09Z Indexed on 2010/03/12 18:27 UTC
Read the original article Hit count: 385

Hi, I have a newbie question regarding when to release the elements of a NSArray. See following pseudo code:

NSMutalbeArray *2DArray = [[NSMutableArray alloc] initWithCapacity:10];
for (int i=0;i<10;i++) {
  NSMutableArray *array = [[MSMutableArray alloc] initWithCapacity:5];
  for (int j=0;j<5;j++) {
    MyObject *obj = [[MyObject alloc] init];
    [array addObject:obj];
    [obj release];
  }

  [2DArray addObject:array];
  [array release];
}
// use 2DArray to do something

[2DArray release]

My question here is, when I release 2DArray, do I need to explicitly release each of its element (array) first? Also, before I release the "array" object, do I need to release each of its element (MyObject) first?

I am new to Objective C. Please help. thanks.

© Stack Overflow or respective owner

Related posts about objective-c

Related posts about arrays