宣布 iPhone 项目中的全局变量
有几个不同的方式,您可以执行此操作:
-
,而不是将它声明为全局变量,将其包装在一个单独的对象,然后,单身人士有可用的任何位置 (通过导入.h 文件 #)
-
创建像"Globals.h"的.h 文件。 在该的.h 声明您数组作为
static extern NSMutableArray * myGlobalArray;,然后在别处在您的应用程序 (在 AppDelegate 是个好地方),就是要做:myGlobalArray = [[NSMutableArray alloc] init];,那么您只需要在的阵列的任何地方#import "Globals.h" -
这是如 # 2,但没有全球的标头。 在您的项目.pch 文件的
#ifdef __OBJC__块内,您可以定义为static extern NSMutableArray *myGlobalArray;的数组。 .pch 文件是自动是 # 导入到您的项目中的每个文件的头文件。
有每种方法的利与弊。 我用所有这三种在不同时间在不同的情况。 我会说单身人士的做法是可能最恰当,因为它将是最灵活的初始化、 访问限制和内存管理。 但是,它可以是不必要如果您不需要的。
好的如果你有很多你不想公开到每个文件在您的项目之间的"全局"变量选项 # 2。您可以只是 # import 它在其所需。但是,这种方法 (以及 # 3) 不从初始化声明 (ie,不创建对象的声明的位置附近)。有人可能会说这不是正确的它们可能正确。
选项 # 3 是好因为那么你永远不会有请记住 # import 任何在所有。但是,它会引发作为选项 # 2 同样的问题。
나는 오늘도 기적을 만든다 .
posted on 2010-10-26 23:01 NullReferenceException 阅读(797) 评论(0) 收藏 举报
浙公网安备 33010602011771号