iOS 静态变量、静态常量、全局变量

1、静态变量:

static 修饰的变量,是一个私有的全局变量;在 OC 中 static 修饰的变量只作用于它声明所在的 .m 实现文件中,同时必须放 @implementation 外面或方法中,它只在程序启动初始化一次。

static int duration;

2、静态常量:

当被 static 修饰的变量同时被 const 修饰时,改变量变为常量,不可变,并且“只在编译单元内可见”,常用来替代 #define 宏,这样当修改其值时,编译起会报错。

static const NSTimeInterval AnimationDuration = 0.5;

static NSString *const AnimationName = @"Fade";

3、全局变量/常量:

extern 修饰的变量,是一个全局变量,当同时被 const 修饰时,变为一个全局常量,在头文件中使用 extern 来声明全局常量,并在相关实现文件中定义其值。这种常量要出现在全局符号表中,所以其名称应该加以区隔,通常与之相关的类名做前缀。

// .h 文件

extern NSString *const WCYAnimationName;

// .m 文件

NSString *const WCYAnimationName = @"Fade";

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容