我想在我的ViewController中声明一个NSInteger
变量,但是我收到错误。
在我的ViewController.h中我有
@interface MainViewController : UIViewController{
NSInteger currentSection;
//Other stuff
}
@property (assign,nonatomic) NSUInteger currentSection;
@end
在我的ViewController.m中我有:
@implementation MainViewController
//Other stuff
@synthesize currentSection;
但是我收到了这个错误:
属性类型'currentSection'('NSUinteger'(又名'unsigned int'))与ivar'sturrentSection'('int')的类型不匹配
为什么我用一条简单的指令得到这个错误? 我正在使用带有ARC的Xcode 4.4。
答案 0 :(得分:1)
您要求编译器使用NSUInteger
ivar合成NSInteger
属性。您必须决定属性的类型,并相应地调整ivar的类型。
请注意,无符号整数不等于(隐式签名)整数。将一个投射到另一个可能会给你意想不到的结果。