приведение типа указателя Objective-C 'NSString *' к типу указателя C 'CFStringRef' (также известному как 'const struct __CFString *' ) требуется мостовое приведение

При преобразовании программы Objective-C в ARC Objective-C я получаю сообщение об ошибке:

"cast of Objective-C pointer type 'NSString *' to C pointer type 'CFStringRef' (aka 'const struct __CFString *') requires a bridged cast "

Код следующий:

- (NSString *)_encodeString:(NSString *)string
{
    NSString *result = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, 
                                   (CFStringRef)string, // this is line in error
                                   NULL, 
                                   (CFStringRef)@";/?:@&=$+{}<>,",
                                   kCFStringEncodingUTF8);
    return [result autorelease];
}

Что такое мостовое приведение?

Screenshot for error

40
задан Jayprakash Dubey 8 October 2014 в 05:31
поделиться