创建一个Object和NIL值

时间:2012-02-07 03:52:07

标签: iphone ios

我习惯在我的代码中使用

myClass.h

@property ( strong, nonatomic ) ClassA *varA

myClass.m

varA  = [[ClassA alloc] init];
if ( varA isEqual:nil )
   NSLog@"var A is nil");
else
   NSLog@"var A is not nil");

这是来自控制台的结果

var A is not nil

我认为var A应该是零。所以我的问题是蓝线是什么以及为什么var A毕竟不是零

2 个答案:

答案 0 :(得分:0)

所以,在你在一个内存空间中分配对象之后,nil值就会消失,你也可以在调用init方法时将ivars的值设置为某个值,你可以在其中调用{ {1}}或类似的东西,这样你就可以得到父对象的特征。

希望这能回答你的问题。

答案 1 :(得分:0)

你刚刚分配了varA,然后你有一个ClassA对象,你没有释放它或将它设置为nil,那你为什么期望它为零呢?

这是正常的行为,就像你刚给自己做了一杯好咖啡,如果你没有喝酒/扔(释放或设置为零),你的咖啡应该还在那里,对吗?