【问题标题】:obj-c, how do I create a property and synthesize an NSUInteger?obj-c,如何创建属性并合成 NSUInteger?
【发布时间】:2011-01-16 14:39:02
【问题描述】:

我在使用 NSUInteger 时遇到了一些问题,我尝试了各种方法并用谷歌搜索,但没有找到答案?

我有...我也尝试过...非原子,保留

@property (readwrite, assign) NSUInteger *anAmount;

@synthesize anAmount;

错误:属性 'anAmount' 的类型与 ivar 'anAmount' 的类型不匹配

当我在 dealloc 中释放它时,我会收到警告..

警告:无效的接收器类型“NSUInteger”

【问题讨论】:

  • NSUInteger 不是对象类型,它是像 intfloat 这样的原始类型。

标签: objective-c xcode


【解决方案1】:

如果您不打算使用指向 NSUInteger 的指针(这是一种值类型,而不是指针类型),请删除 *

@property (readwrite, assign) NSUInteger anAmount;

并且不要释放它。

【讨论】:

    【解决方案2】:

    另一种可能性是在下面使用 NSNumber 声明和初始化。 NSNumber 提供了一些您可能感兴趣的辅助方法。

    @property (readwrite, copy) NSNumber showMeTheMoney;
    
    showMeTheMoney = [NSNumber numberWithUnsignedInt:1234567890];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多