#ios #objective-c #xcode
Вопрос:
Поэтому я не могу понять эту ошибку.
У меня есть объект с этими свойствами
@property (nonatomic, readwrite) double width;
@property (nonatomic, readwrite) double height;
Когда я создаю NSSdictionary, добавьте их в него
if (config.width) {
properties[@"height"] = config.height;
}
if (config.height) {
properties[@"height"] = config.height;
}
Я получаю следующую ошибку
Отправка «double» в параметр несовместимого типа «id _Nullable»
Если я прав, тип id
эквивалентен любому? что включает double
в себя . Кроме того, я устанавливаю значение, если оно существует?
Ответ №1:
Если я прав, идентификатор типа эквивалентен любому? которая включает в себя двойное
Но ты не прав. id
эквивалентен любому объекту (подклассу NSObject). double
это не объект, это примитив.
Комментарии:
1. Еще раз я предлагаю вам apeth.com/iOSBook/ch01.html . Это бесплатное чтение, и оно учит вас объективному-С. Разве обучение не было бы лучше, чем избиение?
Ответ №2:
На всякий случай, если кто-нибудь захочет знать, как мне удалось это исправить, я сделал
[NSNumber numberWithDouble:config.height];