当我的应用启动时,我开始在日志中收到消息:
*** -[NSMutableArray initWithCapacity:]: Request for large capacity 9223372036854775808
我尝试为-[NSMutableArray initWithCapacity:]
设置一个符号断点,但它不会触发。我怎么能找出导致这个问题的电话?
我在Lion上的Xcode 4中,都完全更新了。
更新
我还尝试在-[NSArray initWithCapacity:]
上设置符号断点,但不会触发。
我碰巧偶然发现造成这种情况的代码行,这是(无意中)设置宽度为无穷大的帧大小。我保持这篇文章的开放,因为我希望有一种更好的方法来找到造成这种情况的代码行。我仍然可以测试建议,因为我知道如何重现该消息。
答案 0 :(得分:1)
尝试在CFLog()
上设置断点,看看是否可以提出有用的回溯(通过调用CFLog()
来发出该消息)。只要没有其他日志记录正在进行,这应该可行。
答案 1 :(得分:0)
初始化数组时可能由负值引起。请检查“[NSArray arrayWithCapacity:num]”和“[[NSArray alloc] initWithCapacity:num]”