0

配列を列挙すると、取得します

<myArray: 0x71b26b0> 
<myArray: 0x71b2830> 
<myArray: 0x71b2900>

myData はリストされたポインターの背後にあると考えることができますが、各アドレスの内容を明示的に表示 (ログ) したい場合は、どうすればよいでしょうか?

&myData を試してみましたが、役に立ちませんでした

--

宇宙ガカの利益のために:

-(void)loadObservedItems{
    NSString *path = [self observationFilePath];
if ([[NSFileManager defaultManager] fileExistsAtPath:path]) {
        NSData *data = [[NSData alloc] initWithContentsOfFile:path];
        NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
        myArray = [unarchiver decodeObjectForKey:@"ObserveKey"];
        [unarchiver finishDecoding];
    } else {
        myArray = [[NSMutableArray alloc] initWithCapacity:10];
    }
NSLog(@" %@",myArray);
}
4

1 に答える 1

3

MyClass.m に追加します。

-(NSString*)description {
    NSMutableDictionary* descDict = [NSMutableDictionary dictionary];
    [descDict addObject:someField forKey:@"someField"]
    [descDict addObject:anotherField forKey:@"anotherField"];
    [descDict addObject:yetAnotherField forKey:@"yetAnotherField"];
    return [descDict description];
}

次に、を使用しますNSLog(@"myObject is %@", myObject);。大物たちと同じように。

もう少し洗練された方法は、(メソッド内で) クラス名とオブジェクト アドレスを結果文字列の前に追加することですが、通常、単純なデバッグには必要ありません。

しかし、次のようにできると思います。

return [NSString stringWithFormat:@"%@ : %@", [super description], [descDict description]];
于 2013-09-06T23:56:21.870 に答える