【发布时间】:2012-06-10 10:47:40
【问题描述】:
在编程中,Kernighan & Ritchie 引入了一条通用规则,即您已为“malloc”分配的所有空间调用“空闲”。
所以下面的代码是正确的:
- (UIImage*) convertImage:(UIImage*)sourceImage {
unsigned char *rawData = malloc(requiredSpace);
...
...
free(rawData);
return imageRef;
}
但是,您也可以在函数中进行封装。所以从函数返回后,内存会自动释放。所以理论上免费在上面的例子中并不是绝对需要的。这是正确的吗?
【问题讨论】:
-
这是什么魔法?
标签: objective-c memory-management malloc free