如何在 Objective C 类中设置布尔类型属性
如何在目标 C 类中使用布尔属性,我这样做了:
@property (nonatomic, copy) BOOL *locationUseBool;
但它给出了错误:
具有“copy”属性的属性必须是对象类型。
正确的申报方式是什么?
How to use a boolean property in objective C class, i did it like:
@property (nonatomic, copy) BOOL *locationUseBool;
but it gives error that:
Property with 'copy' attribute must be of object type.
what is the correct way of declaring?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您也可以这样声明。
基本上,如果您说非原子,并且使用 @synthesize 生成访问器,那么如果多个线程尝试同时更改/读取该属性,则可能会发生不良情况。您可以获得部分写入的值或过度释放/保留的对象。
在多线程程序中,原子操作不能部分中断,而非原子操作可以。
You can declare this way also.
Basically, if you say nonatomic, and you generate the accessors using @synthesize, then if multiple threads try to change/read the property at once, badness can happen. You can get partially-written values or over-released/retained objects
In a multi-threaded program, an atomic operation cannot be interrupted partially through, whereas nonatomic operations can.
没有星号,没有复制,没有保留。
No asterisk, no copy, no retain.
这对我有用。
属性声明中没有星号*符号。此外,“分配”的使用是可选的。
This one worked for me.
There is not asterisk * symbol in property declaration. Also, use of 'assign' is optional.