Следующий код:Что такое NSConcreteData и где оно определено?
[[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:mapURL]]
возвращает экземпляр NSConcreteData в отличие от NSData (который я ожидал!). Что представляет собой NSConcreteData, и почему оно возвращается вместо экземпляра NSData? Далее, где этот класс определен? XCode жалуется, что он не был определен, но я не знаю, что я должен включить, чтобы получить класс.
Любая помощь оценена!
Я нашел корень моей проблемы быть проверка на [суб isMemberOfClass: [NSData класс]] вместо [под isKindOfClass: [NSData класс]] Последние возвращает истину, если саб экземпляр класса, полученного из NSData, тогда как первый не будет. Приветствия! – Codebeef
Просто заметьте, вы не всегда можете рассматривать NSContreteData как NSData, например: при попытке сериализации JSON. Это вызовет исключение: Завершение приложения из-за неотображенного исключения «NSInvalidArgumentException», причина: «Недопустимый тип в записи JSON (NSConcreteData)» – Tim