我第一次尝试使用Core Foundation,但我必须遗漏一些东西。 我试图使用NSObjects作为CFMutableDictionaryRef的键和值。
我有以下测试应用程序:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
NSString* key = @"testKey";
NSObject* item = [[NSObject alloc] init];
const CFDictionaryKeyCallBacks keyCB = kCFTypeDictionaryKeyCallBacks;
const CFDictionaryValueCallBacks valCB = kCFTypeDictionaryValueCallBacks;
CFMutableDictionaryRef dict = CFDictionaryCreateMutable(NULL, 0, &keyCB, &valCB);
CFDictionaryAddValue(dict, item, key);
NSLog(@"[CH] added = %@", CFDictionaryGetValue(dict, key));
NSLog(@"[CH] size = %ld", CFDictionaryGetCount(dict));
}
输出:
2011-07-14 16:47:40.568 TestCoreFoundation [61343:903] [CH]添加= (null)2011-07-14 16:47:40.578 TestCoreFoundation [61343:903] [CH]大小 = 1
答案 0 :(得分:3)
您向后调用CFDictionaryAddValue。它是dict,key,然后是value:
CFDictionaryAddValue(dict, key, item);
除此之外,它看起来很好。
希望有所帮助。