add Value 不包含在 CFDictionary c++ 中
add Value is not contains in CFDictionary c++?
我正在使用CFDictionary进行维护列表。我在添加值后添加了一些带有值的键,检查添加的键是否包含在字典中,它返回 true。但是如果我尝试获取值,则返回 null。如何查看我错过了哪里?
//Create Dictionary
CFMutableDictionaryRef fileInfo = CFDictionaryCreateMutable(NULL,0,NULL,NULL);
//add Value
CFDictionaryAddValue(fileInfo, CFSTR("filename"),getstring((uint8_t*)buffer,&offset));
int size = CFDictionaryGetCount(fileInfo);
//Return 1;
if(CFDictionaryContainsKey(fileInfo,CFSTR("filename"))) // return true
{
const void* filename = CFDictionaryGetValue(fileInfo, CFSTR("filename"));
if(filename ) // return null
{
}
}
请帮助我。
我认为您在创建字典时需要传递一些回调,否则字典的行为可能不是您所期望的。
此外,请确保getstring()
不返回 NULL。