Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何将CFArrayRef设置为NSMutableArray_Objective C_Xcode_Nsmutablearray - Fatal编程技术网

Objective c 如何将CFArrayRef设置为NSMutableArray

Objective c 如何将CFArrayRef设置为NSMutableArray,objective-c,xcode,nsmutablearray,Objective C,Xcode,Nsmutablearray,这是我创建CFArrayRef的代码。我想知道如何使其成为NSMutableArray。我的TableViewController需要它。或者是否有其他方法在TableViewController中使用CFArrayRef ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef arrayOfAllPeople = ABAddressBookCopyArrayOfAllPeople(addressBook); CFArr

这是我创建CFArrayRef的代码。我想知道如何使其成为NSMutableArray。我的TableViewController需要它。或者是否有其他方法在TableViewController中使用CFArrayRef

ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef arrayOfAllPeople = ABAddressBookCopyArrayOfAllPeople(addressBook);

CFArrayRef
是免费桥接到
NSArray*
的,因此您可以将其强制转换,然后创建可变副本:

NSMutableArray *data = [(NSArray *) myCFArrayRef mutableCopy];

对于自动释放的版本,请使用

NSMutableArray* data = [NSMutableArray arrayWithArray: (NSArray*) myCFArrayRef];

将NSMutableArray类型转换为CFArrayRefIf您使用ARC,我认为您需要使用以下内容:(u bridge NSArray*)