1

私は持っています:

NSDate *d = [[NSDate alloc] init];
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *dc = [calendar components:unitFlags fromDate:d];
// doing something with dc.day, dc.month, dc.year
[dc release];
[d release];

「何かをする..部分」を削除しようとしましたが、getとreleaseを実行しただけですが、それでもクラッシュします。[dc release]の部分をコメントアウトするだけで、すべて正常に機能します。

私はObj-Cを初めて使用します。なぜこれがクラッシュするのか分かりますか?私は何か間違ったことをしていますか?

4

1 に答える 1

4

リリースしてはいけませんdc。alloc、new、または copy に由来するものではありません。

Cocoa メモリ管理ルールをブラッシュアップする

于 2009-10-08T16:47:10.393 に答える