遇到一个奇怪的问题,在Xcode 6.1上调试一些代码,其中我正在调试的NSArray的值有对象,但是在检查单个元素时调试器没有显示任何内容。这是我在调试器中看到的......
使用以下代码行填充kPatternDifficulties数组...
NSArray *kPatternDifficulties = [self.definition objectForKey:@"pattern-difficulties"];
通常当我看到类似这样的东西时,我发现一个很好的粗略检查是,是否为正在运行的特定方案/配置启用了优化。在这种情况下,关闭优化没有做任何事情。作为下一步,我认为这可能是一个内存问题,也许self.definition的内容会提前自动释放,所以我尝试将上面的行转换为副本而不是代理...
NSArray *kPatternDifficulties = [NSArray arrayWithArray:[self.definition objectForKey:@"pattern-difficulties"]];
这很有效。我可以正确地看到NSArray的所有元素,所以我有一个很棒的解决方案。我确实有一些问题,比如......