質問

These are classes and they declares pointers... to objects right? You send methods to them like objects. NSNumber * myNumber = [NSNumber numberWithInteger: x];

So why are they not released like so: [myNumber release];

Thanks!

役に立ちましたか?

解決

By convention, class method initializers like the one you've shown create autoreleased instances, so you don't need to call release unless you retain them somehow. However, the instance method initializers - like initWithInteger: in your case - return retained instances. Those you would need to release yourself.

他のヒント

There is a rule you should remember about memory management "NARC": When you use New Alloc Retain Copy you should release or autorelease object, otherwise you shouldn't.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top