コードをステップ実行していて、ローカルの NSString 変数の奇妙な動作に気付きました。
ローカルの NSString 変数を含むメソッドをランダムに呼び出すと、データが破損しているかのように見えます。
これが私のコードです:
NSString *sourceValue = [NSString string];
NSString *targetValue = [NSString string];
[element attributeForName:item.target].stringValue = item.source;
sourceValue = item.source;
targetValue = [element attributeForName:item.target].stringValue;
if ([item.target isEqualToString:@"hidden"])
dynamicControl.isHidden = [sourceValue boolValue];
if (![targetValue isEqualToString:sourceValue])
valid = NO;
変数 targetValue が保持する「破損した」データの下の画像を参照してください-私のメソッドへのランダムな呼び出し:
これはもしかしたら、私の下で変化する記憶か何か?
注: 私は ARC を使用しています。
あなたの助けに感謝します、ありがとう