我应该发布从Mac上的字典中获取的对象吗?

时间:2010-11-15 17:24:36

标签: macos dictionary refs

即:

boolRef = (CFBooleanRef)CFDictionaryGetValue(descriptionDictionary, kDADiskDescriptionMediaRemovableKey);
if (boolRef) {
    CFRelease(boolRef); // do i need this code?
}

1 个答案:

答案 0 :(得分:2)

首先阅读Memory Management Programming Guide for Core Foundation。答案是否定的,因为创建规则。 CFDictionaryGetValue()不包含“创建”或“复制”字样。

请注意,CFRelease()在这种情况下不仅不需要,而且不正确并且会导致过度释放崩溃。