對不起,這個愚蠢的問題。我正在努力學習objc,而且我無法在2個int值之間做一個簡單的求和......事實上,問題是在求和之前。麻煩轉換NSNumber爲int
我有具有定義爲NSNumber的一個實例變量的對象和它的如下定義爲一個屬性:
@interface MyObj : NSObject {
NSNumber *count;
}
@property (readwrite, assign) NSNumber *count;
@end
@implementation MyObj
@synthetize count;
@end
然後,我有一類將消耗MyObj中:
- (void)total:(MyObj *)mobj {
int count = [mobj.count intValue];
NSLog(@"%@", mobj.count);
NSLog(@"%@", count);
int total = 10 + count;
NSLog(@"%@", total);
}
第一個NSLog很好地打印mobj.count(比方說5),但第二個拋出一個EXC_BAD_ACCESS。當然,這個程序永遠不會達到這個總和。
那麼,我在做什麼錯了?我試圖根據這個post將它轉換爲int。
TIA,
鮑勃
Evadne Wu也是對的。 – Garrett 2010-06-28 01:01:12
不是不改變類型;試圖將一個NSNumber *分配給一個int。 – bbum 2010-06-28 01:04:38