【问题标题】:How to create property for BOOL Objective-C [duplicate]如何为 BOOL Objective-C 创建属性 [重复]
【发布时间】:2016-04-06 12:12:30
【问题描述】:

代码:

@property (nonatomic, retain) BOOL val;

错误:

具有“保留(或强)”属性的属性必须是对象类型

我想在另一个类中使用这个 bool 对象。我在 .h 文件中创建它

【问题讨论】:

    标签: ios objective-c properties


    【解决方案1】:

    BOOL 是原始类型(因此不是指针,因此没有内存管理)。

    您以这种方式声明属性:

    @property (nonatomic) BOOL val;
    

    (你也可以明确地写成 assign 而不是 strong/retain)

    【讨论】:

    • 请注意,这适用于所有基本类型:整数、浮点数、结构等的属性需要以这种方式声明。
    • 谢谢它解决了..
    • 您在答案中的最后一句话毫无意义。它必须是assign。事实上,assign 是非对象属性的默认值。
    • 你说得对,我的句子不清楚,我更新了我的答案。
    【解决方案2】:

    使用assign 属性,这是BOOL 的默认值:

    @property (nonatomic, assign) BOOL val;
    

    【讨论】:

      猜你喜欢
      • 2023-03-14
      • 2011-08-08
      • 2012-05-25
      • 1970-01-01
      • 2013-05-17
      • 2012-06-23
      • 1970-01-01
      • 2011-10-01
      • 2014-03-21
      相关资源
      最近更新 更多