-2

这些是类,它们声明指向对象的指针是正确的吗?您可以像对象一样向它们发送方法。 NSNumber * myNumber = [NSNumber numberWithInteger: x];NSNumber,NSSet类的内存管理

那么他们为什么没有公布,像这样: [myNumber release];

谢谢!

+1

你可能会觉得这有帮助:http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmRules.html – 2013-03-10 18:03:46

回答

1

按照惯例,类方法初始化程序(如您所显示的类创建自动释放实例)不需要调用release,除非您以某种方式调用retain。但是,实例方法初始值设定项(如您的案例中的initWithInteger:)会返回保留的实例。那些你需要释放自己。

1

有一条规则应该记住内存管理“NARC”:当您使用New Alloc Retain Copy时,您应该释放或自动释放对象,否则您不应该这样做。