0

いくつかのコードをデバッグしようとしています。静的アナライザーを実行し、メモリ リークを修正したと思っていましたが、2 つのタブを切り替えるとエラーが発生します。2番目のタブと最初のタブを切り替えるときのコードは次のとおりです。

        if (_sortButton != nil) {
            self.SortButton = nil;
            NSMutableArray *barItems = [[self.MainToolbar items] mutableCopy];
            [barItems removeObjectAtIndex:0];
            [self.MainToolbar setItems:barItems]; // bad access here
            [barItems release];
        }

self.MainToolbar setItems 行で EXC_BAD_ACCESS を取得し続けます。NSZombieEnabled を環境変数として追加し、その悪いアクセス行にブレーク ポイントを設定しましたが、ブレークポイントの後にステップを実行したり、ブレークポイントの後に続行を押したりしても、コンソールに何も出力されません。これを正しく使用していますか? ありがとう。

4

2 に答える 2

1

NSZombieEnabled よりもはるかに使いやすくProfile、NSZombie インストゥルメントを実行して選択するときに代わりに使用します。

これには XCode4 が必要です。

于 2011-07-28T22:05:09.233 に答える
0

NSArray のオブジェクトのリストの最後に ,nil を追加してみてください。

[self.MainToolbar setItems:barItems,nil]
于 2011-07-28T22:08:03.533 に答える