0
我有CFObject返回相同的方法,下面如何在方法返回CFObject時釋放(ARC)CoreFoundation對象?
-(CFMutableAttributedStringRef)getAttStrForArray:(NSArray*)substrings forString:(NSString*)aStr
{
CFMutableAttributedStringRef as3 = CFAttributedStringCreateMutable(NULL, 0);
CFAttributedStringBeginEditing(as3);
CTFontRef font = CTFontCreateWithName(CFSTR("HelveticaNeue-Bold"), 12.5, NULL);
CFAttributedStringReplaceString(as3, CFRangeMake(0, 0), (__bridge CFStringRef)aStr);
......
CFAttributedStringEndEditing(as3);
//CFRelease(as3);
return as3;
}
這裏我得到的內存泄漏,我hav't發佈CFRelease(as3);
對象,因爲它是一個迴歸方法。有什麼辦法來解決內存泄漏?
我不喜歡這樣'NSAttributedString *的NSString =(__bridge_transfer NSAttributedString *)AS3; // CFRelease(as3); return(__bridge CFMutableAttributedStringRef)nsString; '但在'CFAttributedStringCreateCopy(NULL,as2):NULL;'上拋出錯誤';' –
我沒有找到你的例子中的任何更新! –
我編輯了我的例子 –