Подтвердить что ты не робот

Как установить свойство типа boolean в объектном классе C

Как использовать логическое свойство в объектном классе C, мне понравилось:

@property (nonatomic, copy) BOOL *locationUseBool;

но он дает ошибку:

Свойство с атрибутом 'copy' должно быть типа объекта.

Каков правильный способ объявления?

4b9b3361

Ответ 1

Вы также можете объявить этот путь.

@property (assign) BOOL locationUseBool;

В принципе, если вы говорите неатомически, и вы создаете аксессоров, используя @synthesize, то если несколько потоков пытаются изменить/прочитать свойство сразу, может случиться плохое. Вы можете получить частично записанные значения или перевыпущенные/сохраненные объекты

В многопоточной программе атомная операция не может быть прервана частично, тогда как неатомные операции могут.

Ответ 2

@property (nonatomic, assign) BOOL locationUseBool;

Нет звездочки, нет копии, нет сохранения.

Ответ 3

Это работало для меня.

@property (nonatomic) BOOL locationUseBool;

В объявлении свойства нет символа звездочки *. Кроме того, использование 'assign' не является обязательным.