【发布时间】:2014-05-13 16:21:13
【问题描述】:
我有一个 NSObject 的子类。在这个类中,我有一个 NSUInteger 声明如下:
@interface Deck : NSObject
- (id)initDecks:(NSUInteger)decks;
- (Card *)drawCard;
@property (nonatomic, assign) NSUInteger drawnCards;
在我的实现文件中,我有以下代码:
#import "Deck.h"
@implementation Deck
- (id)initDecks:(NSUInteger)decks {
self = [super init];
if (self) {
self.drawnCards = 1;
}
return self;
}
- (BJCard *)drawCard {
self.drawnCards++;
return nil;
}
init 方法中分配给 NSUInteger (drawnCards) 的编号设置正确,但是,我稍后无法更改。我在 Xcode 中没有收到任何警告或崩溃,但数字保持不变。我试图做 self.drawnCards++ 和 self.drawnCards = 10 等,但没有任何效果。知道我的代码可能有什么问题吗?我正在检查值:
NSLog(@"Value: %tu", self.drawnCards);
【问题讨论】:
-
self.drawnCards = 10;没有理由不更改该值。请创建一个 minimal, runnable sample 来演示问题。
标签: ios objective-c nsinteger nsuinteger