我正在创建一个文字游戏,我需要为用户分配硬币:如何制作3个bool全局变量?
首先,我已经反复阅读了“全局变量”主题。不幸的是,我无法成功地完成这些任务。
我需要使3 bool全局变量,如btn1Pressed,btn2Pressed,btn3Pressed。 &如何使int类型的“硬币”这个词全球化? 这是如何完成的?
@interface MainView :
我正在创建一个文字游戏,我需要为用户分配硬币:如何制作3个bool全局变量?
首先,我已经反复阅读了“全局变量”主题。不幸的是,我无法成功地完成这些任务。
我需要使3 bool全局变量,如btn1Pressed,btn2Pressed,btn3Pressed。 &如何使int类型的“硬币”这个词全球化? 这是如何完成的?
@interface MainView :
要声明全局变量,您需要在任何类定义之外声明它们。如果我有很多全局变量,我通常会将它们放在它们自己的源文件中,并将其命名为globals.m以帮助保持组织性。如果我只有一个或两个,我只需在App委托中声明它们(在#includes之后但在@implementation之前)。
int coins;
BOOL btn1Pressed;
BOOL btn2Pressed;
BOOL btn3Pressed;
// etc
然后你在一个共同的头(我用globals.h)作为extern
申报。声明他们的任何类定义之外:
extern int coins;
extern BOOL btn1Pressed;
extern BOOL btn2Pressed;
extern BOOL btn3Pressed;
...
这告诉说:“这个变量声明在别处”的编译器,所以它知道在链接的时间来解决它。将该头部包含在需要访问这些变量的任何源模块中。
如果你的意思是“全局”,如“在你的应用随处访问”,则可以使用单例:
http://www.galloway.me.uk/tutorials/singleton-classes/
这种方式可以组中的一个全局对象所有这些全局变量。
使用单例模式是实现它的理想方式。
在YourAppdelegate.h文件中为您的bools创建属性btn1Pressed,btn2Pressed,btn3Pressed。在YourAppdelegate.m文件中进一步合成它们。
现在,如果您要访问或以任何其它类改变这些值
// Accessing btn1Value
BOOL checkTheValueOFButton1 = [(YourAppDelegate *)[UIApplication sharedApplication]btn1Pressed];
如果你想改变的价值
[(YourAppDelegate *)[UIApplication sharedApplication]setbtn1Pressed:NO];
可能重复[在iPhone项目申报全局变量( http://stackoverflow.com/questions/1249131/declaring-global-variables-in-iphone-project) – BytesGuy