方法调用完成后,方法中声明的变量是否被擦除?即如果我有方法“someMethod”并且每次调用它我想从堆栈属性返回不同的NSString将返回堆栈上的下一个对象或者它将保持返回第一个索引,因为x被删除了方法调用结束.我知道C是否在函数调用后删除了变量,它在目标c中是否相同?会为变量x使用单独的属性这个问题吗?谢谢
(Double) someMethod{ int x; [self.stack objectAtIndex:x]; x++; }
阅读完评论之后,我尝试创建一个替换x的属性,这里是我写的但是我收到一条错误警告,声明“本地声明”_location“隐藏实例变量”这是什么意思?
@property (nonatomic) int location; @synthesize location=_location; -(int) location{ if(!_location){ int _location = 0; //warning is here return _location; } _location++; return _location; } (Double) someMethod{ int x; [self.stack objectAtIndex:self.location]; x++; }