为什么会产生警告?

时间:2011-04-10 19:53:55

标签: ios addressbook core-foundation

ABMutableMultiValueRef *address = (NSString *)ABRecordCopyValue(thisPerson, kABPersonAddressProperty);
for (CFIndex i=0; i < ABMultiValueGetCount(address); i++) {
    CFDictionaryRef dict = ABMultiValueCopyValueAtIndex(address, i);

代码有效,但会生成警告。任何线索?

警告:FirstViewController.m:46:警告:从不兼容的指针类型初始化

2 个答案:

答案 0 :(得分:1)

我相信您收到警告是因为您要为NSString*变量分配ABMutableMultiValueRef*值。您应该只将指针变量分配给相同类型的指针。

答案 1 :(得分:0)

ABMutableMultiValueRefCFTypeRef,因此将ABRecordCopyValue的结果转换为CFString代替NSString可能是一个简单的解决方案。