我有一个简单的对象声明:
@interface TSTask : NSObject
@property (nonatomic, strong) NSString* name;
@property (nonatomic, strong) NSString* otherValue;
@end
在调试过程中发生了奇怪的事情。我创建了一个新的TSTask,然后在屏幕的变量区域中查看它,并参见
(TSTask *) 0 key/value pairs.
TSTask对象不是,也不是NSDictionary。但它想要这样显示它。更糟糕的是,如果我试着看到“name”和“otherValue”的值,我就不能。但是,如果我输入“描述”方法,它确实会显示值。
任何想法如何纠正这一点。当它没有显示正确的东西时,它会使调试变得非常困难。
答案 0 :(得分:0)
以下是我的尝试:
@interface TSTask : NSObject
@property (nonatomic, strong) NSString* name;
@property (nonatomic, strong) NSString* otherValue;
@end
@implementation TSTask
@end
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
TSTask *t = [TSTask new];
NSLog(@"t: %@", t);
}
我已经在iOS和OSX中尝试过并且没有得到你提到的行为,我得到了预期的行为。
所以必须有别的东西:你可以在错误点发布用法吗?宣言,实例化等。