我玩iPhone开发已经有一段时间了,虽然当你是一个"硬核"的时候感觉有点尴尬.NET开发者,一旦你习惯了它,它就不那么糟糕了.
在我读过的每一本关于Objective-C的书中,都只提到了内存管理的retain
/release
(参考计数).作为一名老的skool C/C++开发人员,使用malloc()
和free()
分配"正常"方式似乎很奇怪,只是在一些脚注中提到了这一点.
我知道malloc()
和free()
在Objective-C中起作用,但我很好奇这是否是常见的做法.毕竟,如果我想分配一个包含malloc()
个整数的数组,这似乎是最有效的方法:
int *array = malloc(sizeof(int) * 100);
memset(array,0,sizeof(int) * 100);
// use the array
free(array);
这真的是最好的方法吗?还是应该避免普通的C内存管理?