Как установить свойство булевого типа в целевом классе C - PullRequest
23 голосов
/ 22 февраля 2012

Как использовать логическое свойство в целевом классе C, я сделал это следующим образом:

@property (nonatomic, copy) BOOL *locationUseBool;

, но выдает ошибку, что:

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

как правильно объявить?

Ответы [ 3 ]

27 голосов
/ 23 февраля 2012

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

@property (assign) BOOL locationUseBool;

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

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

25 голосов
/ 22 февраля 2012
@property (nonatomic, assign) BOOL locationUseBool;

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

1 голос
/ 14 октября 2014

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

@property (nonatomic) BOOL locationUseBool;

В объявлении свойства нет символа *. Также использование 'assign' является необязательным.

...