加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 数组在Xcode 4调试器中显示为空,即使它们不是

发布时间:2020-12-14 17:29:32 所属栏目:百科 来源:网络整理
导读:我在调试一些代码时遇到了一些问题,所以我写了这篇小文章来测试它: NSMutableArray *output = [NSMutableArray array];while (true) { NSMutableArray *input = [NSMutableArray array]; for (int i = 0; i 30; i++) { [input addObject:[NSNumber numberWi
我在调试一些代码时遇到了一些问题,所以我写了这篇小文章来测试它:

NSMutableArray *output = [NSMutableArray array];
while (true) {
    NSMutableArray *input = [NSMutableArray array];
    for (int i = 0; i < 30; i++) {
        [input addObject:[NSNumber numberWithInt:i]];
    }
    [output addObject:[NSArray arrayWithArray:input]];
    NSLog(@"%@,%@",input,output);
}

我在NSLog的线路上插了一个断点,发现了一些有趣的东西.进入变量视图,我打开输入,它正确显示它充满了NSNumber对象.然后我打开输出,正确显示包含一个数组.但是,在展开此数组时,它显示为空.

然而,NSLog显示了不同的故事.它正确地将多维输出数组显示为包含填充了NSNumbers的数组.多维数组不能与调试器中的变量预览一起使用吗?这是问题的图像:

我完全被这个困惑了.还有其他人有这个问题吗?

解决方法

我已经向Apple提交了关于这个Xcode的几个版本的错误报告,并在项目构建器时代.它一直被报道为重复.显然这是一个已知的错误,但优先级低或难以修复.

其他容器类(如NSDictionary和NSSet)也存在同样的问题,因此它并不特定于NSArray.

我建议你在http://bugreport.apple.com提交一份报告,以便对这个问题施加更大的压力.并且在同一时间依赖po或NSLog来进行大多数容器类的调试需求.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读