2010-07-28 80 views
1

我需要一个值来计算它的getter方法,如果它尚未设置。我更喜欢使用nullable int构造,所以我不需要另一个bool来检查它是否已经被计算。如何使用可为空的int或NSInteger指针?

我的第一个预感是要去NSInteger *。我可以检查它是否为NULL,否则为它设置一个值。但我不知道这是否可能,因为我无法真正获得分配给它的价值。

if (!value) 
    { 
     value = [self calcValue]; 
    } 
    return value; 

这导致Assignment makes pointer from integer without castReturn makes integer from pointer without a cast

如何将int分配给NSInteger *
我该如何将NSInteger *投射到int

或者:什么是更好的解决方案?

回答

7

一个NSInteger实际上是一个int。您正在寻找NSNumber,它可以让您将数字视为对象。