我想创建一个计数器,每当它满足我的代码的if块中的条件时,它会更新一个。为实现这一目标,我实现了单音而不是定义全局变量 在.h文件中.........
@interface MONObject : NSObject {
int *counterplus;
}
@property(nonatomic) int *counterplus;
+(MONbject*) sharedinstance;
@end
在.m文件中
static MON object * sharedinstance;
@implementation MONbject;
@synthesize counterplus;
+(MONbject*)sharedinstance
{
if(!sharedinstance){
sharedinstance=[[MONObject alloc]init];
}
return sharedinstance
}
-(MONObject*) int
{
self=[super init];
if(0!=self){
counterplus=0;
}
return self;
}
@end
我将上述内容称为......
if(condition){
[MONObject sharedinstance].counterplus++;
}
当我尝试使用NSLog
打印它的值时,程序停止并发出此错误
“单步执行直到退出函数objc_msgSend,它没有行号信息。警告远程故障回复:E37
我根本不知道。我试图通过将其定义为extern并尝试使用全局变量 增量。但它给出了同样的错误。 有没有办法实现这个目标?你能否指出我的错误。
答案 0 :(得分:0)
会是 -
@property(nonatomic) int counterplus;
而不是 -
@property(nonatomic) int *counterplus;
对于Logging int值,请使用 -
NSLog(@"%d", counterplus);
答案 1 :(得分:0)
它不是
@interface MONObject : NSObject {
int counterplus;
}
@property(nonatomic, assign) int counterplus;
+(MONbject*) sharedinstance;
@end
希望它有所帮助。快乐的编码:)