4

次のコーディングでは、CFSTR を介して変数を渡したいのですが、どうすればよいですか?

ABMutableMultiValueRef address = ABMultiValueCreateMutable(kABDictionaryPropertyType);
// Set up keys and values for the dictionary.

CFStringRef keys[5];

CFStringRef values[5];

keys[0] = kABPersonAddressStreetKey;

keys[1] = kABPersonAddressCityKey;

keys[2] = kABPersonAddressStateKey;

keys[3] = kABPersonAddressZIPKey;

keys[4] = kABPersonAddressCountryKey;

values[0] = CFSTR("Wiztech, 208/B Clifton Center, Karachi");

//values[0] = CFSTR(address1); I want to pass address1 which is NSString, how can I?

values[1] = CFSTR("");

values[2] = CFSTR("");

values[3] = CFSTR("");

values[4] = CFSTR("");
4

1 に答える 1

12

次のようにキャストするだけです:

NSString * yourThing = [NSString stringWithString:@"blah blah"]
values[0] = (CFStringRef)yourThing;

NSString と CFString は交換可能です (キャストされる場合があります)。保持/解放も忘れないでください

于 2011-03-28T07:21:44.010 に答える