首先,我尝试了几乎所有在stackoverflow中给出的解决方案,但我没有成功实现全局变量,我甚至做了一步一步的教程,但我仍然得到相同的错误.
继承人的问题:
我有一个包含多个视图的程序,我想在所有视图上使用变量,所以我使用了全局变量,
我有:
GlobalVars.h
#import <UIKit/UIKit.h>
extern NSArray *truckBoxes;
extern NSArray *farmerlist;
extern NSString *farmerCardNumber;
extern NSString *fName;
@interface GlobalVars : NSObject
{
}
@end
Run Code Online (Sandbox Code Playgroud)
GlobalVars.m
#import "GlobalVars.h"
NSArray *farmerlist;
NSArray *truckBoxes;
NSString *farmerCardNumber;
NSString *fName;
@implementation GlobalVars
{
}
@end
Run Code Online (Sandbox Code Playgroud)
我将该文件包含在类中(连接到视图控制器):在我添加的.h文件下 #import "GlobalVars.h
我可以访问farmerlist和truckBoxes从应用程序,但无法访问fName或farmerCardNumber.
我可以写farmerCardNumber同一个视图并从中读取,但如果我稍后尝试从另一个视图访问它,我会得到
2013-10-26 11:11:45.612 C3Cms[10427:70b] Branch : 11558
2013-10-26 11:11:59.459 C3Cms[10427:70b] -[__NSArrayM length]: unrecognized selector sent to instance 0x8b7fbc0
2013-10-26 11:11:59.463 C3Cms[10427:70b] *** Terminating app …Run Code Online (Sandbox Code Playgroud) 我已经查看过这里发布的大多数问题,但对于我对全局变量充满信心,我的回答并不是很清楚.
我所想的全局变量是,只是一个声明的变量
@interface HelloWorldLayer : CCLayer
{
//global variable goes here
NSString *string;
}
Run Code Online (Sandbox Code Playgroud)
现在我可以在任何方法中使用此变量.
这是正确的还是我错了.