CFStringRef является неизменным объектом, поэтому вы должны создать новый экземпляр с другим значением:
data = CFStringCreateWithCString (NULL, "", kCFStringEncodingUTF8);
И помните, что вам нужно освободить это значение.
Но так как типы CFStringRef и NSStrings являются платными- без мостов, вы можете просто использовать NSString в своем коде (что, вероятно, облегчит его понимание и поддержку позже):
NSString *data = (NSString*)CFDictionaryGetValue(dict, kABPersonAddressStateKey);
NSComparisonResult result = [(NSString *)data compare:element options:compareOptions];
if(NSOrderedAscending == result) {
// Do something here...
}
else if (NSOrderedSame == result) {
// Do another thing here if they match...
data = @"";
}
else {
// Try something else...
}