宣布 iPhone 项目中的全局变量
2010-10-26 23:01
204 查看
有几个不同的方式,您可以执行此操作:
,而不是将它声明为全局变量,将其包装在一个单独的对象,然后,单身人士有可用的任何位置 (通过导入.h 文件 #)
创建像"Globals.h"的.h 文件。 在该的.h 声明您数组作为
这是如 # 2,但没有全球的标头。 在您的项目.pch 文件的
有每种方法的利与弊。 我用所有这三种在不同时间在不同的情况。 我会说单身人士的做法是可能最恰当,因为它将是最灵活的初始化、 访问限制和内存管理。 但是,它可以是不必要如果您不需要的。
好的如果你有很多你不想公开到每个文件在您的项目之间的"全局"变量选项 # 2。您可以只是 # import 它在其所需。但是,这种方法 (以及 # 3) 不从初始化声明 (ie,不创建对象的声明的位置附近)。有人可能会说这不是正确的它们可能正确。
选项 # 3 是好因为那么你永远不会有请记住 # import 任何在所有。但是,它会引发作为选项 # 2 同样的问题。
,而不是将它声明为全局变量,将其包装在一个单独的对象,然后,单身人士有可用的任何位置 (通过导入.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 同样的问题。
相关文章推荐
- ios 项目中的全局、局部、成员、属性变量
- 使用sencha touch cmd 4.0 创建项目、打包(加入全局变量、公用类、自定义扩展、资源文件)
- iOS 使用const定义项目全局变量
- Android之项目全局变量的定义
- 第十二周项目 1 阅读程序(全局变量)
- <base href="<%=basePath %>"> 设置整个项目的全局变量
- web项目中,在web.xml中配置全局变量
- 第十二周项目全局变量程序2
- iPhone开发之全局变量的使用(转)
- 项目问题总结一、全局变量引起的并发问题
- 第十二周项目1阅读全局变量
- 第12周项目1(2-1)-全局变量
- 在vue项目中 如何定义全局变量 全局函数
- 第十二周项目一 阅读程序(2)全局变量
- 第12周项目1--阅读程序(2 全局变量)
- 第十二周项目1(4)全局变量的认识
- 第十二周项目1-2:全局变量
- iPhone开发之全局变量的使用
- 在iPhone开发中,全局变量的几种使用方法
- 在vue项目中 如何定义全局变量 全局函数