0

クラス Block があるとします

Class Block : NSObject

ここで、C スタイルで配列を作成します。

Block *blocks[5]; // or calling malloc()
Block *aBlock = [[Block alloc] init];
blocks[0] = aBlock; 
// at this point, aBlock will be hand over to array blocks slot.
// not like NSArray, object of 'Block' will not retain by @property(retain)
// or should I call retain before hand over the value into its array and release afterward?
// should I still call below code to release object ?
// [aBlock release];

後でaBlockオブジェクトを解放する必要があるのか​​ 誰かが私に説明できますか?

4

1 に答える 1

2

Blockいいえ、プリミティブ配列は各オブジェクトを保持しないためです。したがって、解放するとBlock、関数がスコープを終了した瞬間にすべてのオブジェクトがクリーンアップされます

于 2012-10-17T03:31:54.797 に答える