详解Objective-C中静态变量使用方法
Objective-C中静态变量使用方法是本文要介绍的内容,Objective-C 支持全局变量,主要有两种实现方式:第一种和C/C++中的一样,使用"extern"关键词;另外一种就是使用单例实现。(比如我们经常会把一个变量放在AppDelegate里面作为全局变量来访问,其中AppDelegate就是一个单例类)
在Objective-C中如何实现像C++中那样的静态成员变量呢?
你需要做的是在一个类A的implementation(.m或者.mm)文件中定义一个static变量,然后为A类定义静态成员函数(class method,也就是类方法)来操作该变量。这样在其它类中你就不需要创建A类的实例来对static变量进行访问。虽然该static变量并不是A类的静态成员变量,但是也算达到了同样的效果。static变量的作用域被限制在单一的文件中。代码可以如下所示:
//example.h @interface Example : NSObject { } - (id)init; +(int)instanceCount; @end //example.m #import "example.h" static int count; @implementation Example -(id)init{ self = [super init]; if(nil!=self){ count+=1; } return self; } +(int)instanceCount{ return count; } @end //example.h @interface Example : NSObject { } - (id)init; +(int)instanceCount; @end //example.m #import "example.h" static int count; @implementation Example -(id)init{ self = [super init]; if(nil!=self){ count+=1; } return self; } +(int)instanceCount{ return count; } @end
相关推荐
fort0 2020-05-16
81570790 2020-04-16
86540698 2020-04-08
zhoutaifeng 2020-03-07
好好学习天天 2020-03-06
InterestSoul 2020-02-17
82467413 2019-12-31
84407518 2012-07-16
81570790 2013-07-01
83254851 2013-08-29
84334052 2019-11-19
86540698 2019-11-19
84467715 2011-07-25
81731290 2014-03-22
85437811 2014-03-22
dahuichen 2019-10-25
ObjectiveC 2011-09-20
80530297 2015-04-14
80530297 2015-04-20