2012-03-05 5 views
3

私はNSMutableArrayという電子メールを合成しました。これはオブジェクトPersonの一部です。電子メール配列には、いくつかのオブジェクトへのポインタが含まれています。NSMutableStringで可変配列にアクセスしようとするとアクセスが不正

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

文字列は次のように(Eメール・オブジェクトのinitメソッドで)宣言されました:これで

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

を私は後で別に[email count]コマンドを実行したとき、私は悪いアクセスエラーが発生します方法。自動保持カウントARCを使用します。なぜこれが起こるのですか?

EDIT:%@を使用して[email count]の出力が印刷されていることが重要であることが判明しました。これはほとんどの時間では機能しません。

答えて

4

私はそれを考え出しました。

私は次のように私はテストメッセージを印刷したココア/目的C.と思いますどのように緑色のそれは紛れも明らかにします:

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

をしかし、カウント方法は、unsigned long型(またはNSInteger)を返し、できるだけ早く私は

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

にそれを変更してそれが働きました。物事はそう:-(

同時にとても簡単と難しいことができ、私にメモ:番号が返された場合

、あなたはそれが(%の@)を指すオブジェクトを印刷することを確認してください無効な場合があります。

関連する問題