我对在Objective-C中分配内存的正确方法感到困惑。假设我有一个NSMutableDictionary。有两种初始化方法:
NSMutableDictionary *alpha = [[NSMutableDictionary alloc] init];
要么
NSMutableDictionary *alpha = [NSMutableDictionary dictionary];
它们之间有什么区别?我知道第一个为alpha分配内存,但是第二个呢?
建议将以下哪一项作为分配内存的最佳实践?
最佳答案
[NSMutableDictionary dictionary];
与以下内容完全相同:
[[[NSMutableDictionary alloc] init] autorelease];
它只为您节省一些打字时间。只要知道保留对象和自动释放对象之间的区别,就可以使用哪个对象。如果您使用的是ARC,那么您甚至不需要知道这一点。
约定是:
关于iphone - 这两种在Objective-C中分配内存的方式有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8211075/