当我使用这行代码时
NSString *address = ABCreateStringWithAddressDictionary(placemark.addressDictionary, NO);
我收到了这个错误
Implicit declaration of function 'ABCreateStringWithAddressDictionary' is invalid in C99
奇怪的是,对于iOS7,它不会触发错误,而对于iOS8则不会。
有没有人遇到同样的问题?
答案 0 :(得分:3)
我可以重现该问题的唯一方法是忘记导入AddressBookUI框架。换句话说,如果我这样说,它会编译:
@import AddressBookUI;
@import CoreLocation;
@implementation Thing
- (void) test {
CLPlacemark* p = [CLPlacemark new];
NSString *address = ABCreateStringWithAddressDictionary(p.addressDictionary, NO);
}
@end
但如果我注释掉第一个@import
行,我就会收到你的错误。这是你犯的错误吗?