即:
boolRef = (CFBooleanRef)CFDictionaryGetValue(descriptionDictionary, kDADiskDescriptionMediaRemovableKey);
if (boolRef) {
CFRelease(boolRef); // do i need this code?
}
答案 0 :(得分:2)
首先阅读Memory Management Programming Guide for Core Foundation。答案是否定的,因为创建规则。 CFDictionaryGetValue()
不包含“创建”或“复制”字样。
请注意,CFRelease()
在这种情况下不仅不需要,而且不正确并且会导致过度释放崩溃。