我相信,我在指针领域迷路了。我有这个(代码语法可能有点不对劲,我不是在看上面有这个代码的机器......但是所有相关的细节都是正确的):
NSMutableArray *tmp = [[NSMutableArray alloc] init];
我他们把它传给另一个班级的例行公事
- (BOOL)myRoutine: (NSMutableArray *)inArray
{
// Adds items to the array -- if I break at the end of this function, the inArray variable has a count of 10
}
但是当代码返回调用例程时,[tmp count] 为 0。
我一定错过了一些非常简单但非常基本的东西,但对于我的生活,我看不到它。谁能指出我做错了什么?
编辑: www.stray-bits.com 询问我是否保留了对它的引用,我说“也许......我们试过这个:NSMutableArray *tmp = [[[NSMutableArray alloc] init] retain]; 不确定是否是你的意思,或者如果我做对了。
EDIT2:迈克麦克马斯特和安迪——那么你们可能是对的。我这里没有代码(它在同事的机器上,他们已经离开了一天),但是为了用值填充数组,我们正在按照使用解码器(?)对象的方式做一些事情。
这个函数的目的是从 iPhone 打开一个文件,将该文件读入一个数组(它是我们在之前的程序运行中保存的一个对象数组)。那个“解码器”有一种方法可以将数据放入数组中。
伙计,我已经完全杀死了这个。真心希望大家能关注,谢谢指教。我们将更仔细地研究它。