Pet*_*uza 1 macos xcode cocoa objective-c
我正在写Objective-C的第一步.
我按照一些示例和官方文档,并使用自动释放的对象*,而没有明确声明NSAutoReleasePool.
*通过自动释放的对象我的意思是: SomeClass *obj = [SomeClass someClass];
这样做可以吗?
它会导致内存问题吗?
宣布NSAutoReleasePool更有效率?
编辑:我在代码示例中犯了一个错误,我的意思是通过它的类工厂方法而不是alloc
实例来获取对象.这个工厂方法[经常|总是]返回自动释放的对象,对吧?例如:[NSString stringWithCString:x]
您通常不需要显式创建自动释放池.当您使用AppKit框架进行正常的Mac编程时,会有一个由事件循环处理的隐式自动释放池.您需要关注自动释放池主要有两种情况:
归档时间: |
|
查看次数: |
314 次 |
最近记录: |