在static-c中,静态变量能够存活吗?

时间:2014-10-15 06:59:49

标签: objective-c static

我已经明白,Objective-c中的static与Java中的static不同。我的问题是Objective-c静态变量。我在Objective-C中有一个静态变量。如果在一个类的一个实例中设置它。如果我在先前设置变量后创建类的新实例,那么值是否可见?

2 个答案:

答案 0 :(得分:2)

是的,这是static变量的重点。它们不是实例变量。静态变量在其范围内只存在一次。它也被初始化了一次。

对于在任何方法之外声明的静态变量以及在方法中声明的静态变量,都是如此。

答案 1 :(得分:1)

static关键字仅用于限制变量的范围,以便只能在其实现文件中直接引用它。

static关键字通常与全局变量一起使用来实现Objective-C的半生不熟的类变量,所以是的,你是对的,无论实例的数量多少,都会存在一个变量的实例。类(包括零),这基本上是因为它与类完全无关。