CFBridgingRelease会产生问题

时间:2016-03-03 08:51:30

标签: ios objective-c automatic-ref-counting

我有一段代码,我在UIImageView中旋转UIImage,调用旋转图像的函数有这段代码,

CGContextRef bmContext = CGBitmapContextCreate(NULL,
                                               rotatedRect.size.width,
                                               rotatedRect.size.height,
                                               8,
                                               0,
                                               colorSpace,
                                               kCGImageAlphaPremultipliedFirst);

然后我这样做,

 CGImageRef rotatedImage = CGBitmapContextCreateImage(bmContext); 
 CFRelease(bmContext);
 CFBridgingRelease(rotatedImage);

 return rotatedImage;

在此之前我正在使用

[(id)rotatedImage autorelease];

但这给了我一个错误

"将c指针类型CGImageRef转换为目标c指针类型id错误"

我读了它并且知道我需要使用CFBridgingRelease,但是它的作用是它在返回它之前释放我的旋转图像因此它给了我一个不好的东西,我在返回后无法释放,因为在那种情况下我永远不会正在执行我的发布声明。

我知道如何发布rotateImage?

0 个答案:

没有答案