繁体   English   中英

无法在自定义NSObject上分配值

[英]cannot assign a value on a custom NSObject

我可能会丢失或看不到非常基本的内容,但是我无法对其进行调试了。

这是我的代码:

NSLog(@"Joker Selected : %d, Prio Value is :%@",joker,[LBGameData sharedGameData].round.joker_1_used ? @"true" : @"false");
[LBGameData sharedGameData].round.joker_1_used = TRUE;
NSLog(@"End of selection, Prio Value is :%@",[LBGameData sharedGameData].round.joker_1_used ? @"true" : @"false");

这是定义。

LBGameData

@property (strong, retain) LBGameRound* round;
+(instancetype)sharedGameData;

LBGameRound

@property (assign, nonatomic) BOOL joker_1_used;

这是我的输出:

2015-10-18 18:54:01.478 Game[804:298953] Joker Selected : 1, Prio Value is :false
2015-10-18 18:54:01.479 Game[804:298953] End of selection, Prio Value is :false

尽管我在上面的行中进行了设置,但为什么在第二个输出中看不到true

给定输出,最可能的问题是[LBGameData sharedGameData][LBGameData sharedGameData].roundnil

尝试从nil值访问BOOL值将导致NO值,从而导致您看到的输出。

通过以下方式尝试。

  BOOL joker_1_used = [LBGameData sharedGameData].self.round.joker_1_used =TRUE;
  NSLog(@"End of selection, Prio Value is :%@",joker_1_used? @"true" : @"false");

输出:

 End of selection, Prio Value is :true

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM