2012-03-05 64 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",....

它的工作。東西都可以在同一時間:-(

所以很容易和努力,備忘錄對我說:

如果返回一個號碼,請確保您想打印它指向的對象以(%@) ,它可能無效!!

相關問題