2012-03-05 38 views
3

我合成了一个名为email的NSMutableArray,它是对象Person的一部分。电子邮件数组包含指向多个NSMutableString对象的指针。尝试使用NSMutableString访问可变数组时遇到错误访问

@property (strong) NSMutableArray *email; 
@synthesize email = _email; 

字符串被宣布(在电子邮件对象的init方法)如下:

NSMutableString *s = [NSMutableString stringWithFormat:@"Blah"]; 

有了这个,我得到一个坏访问错误,当我后来在不同执行的[email count]命令方法。我使用自动保留计数ARC。为什么会发生?

编辑:它变得很重要,[email count]的输出是使用%@打印的,这在大多数情况下都不起作用,请参见下文。

回答

4

想通了。

使得昭然若揭我是如何绿色我与可可/目标C.打印测试信息如下:

NSLog (@"%@",[[p email] count]);

但是计数方法返回一个无符号长(或NSInteger的),和只要我把它改为

NSLog (@"%ul",....

它的工作。东西都可以在同一时间:-(

所以很容易和努力,备忘录对我说:

如果返回一个号码,请确保您想打印它指向的对象以(%@) ,它可能无效!!

相关问题