0

如果我枚举一个数组,我会得到

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

我可以认为 myData 在列出的指针后面,但是如果我想明确查看(记录)每个地址的内容,该怎么做?

我试过 &myData 无济于事

--

为了uchuugaka的利益:

-(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 回答