实施块的范围

时间:2016-02-23 09:03:22

标签: ios objective-c

我想知道以下代码之间有什么区别:

第一

a2enmod http2

第二

@implementation ViewController {
    AAShareBubbles *shareBubbles;
}

// methods' implementations

@end

您更喜欢哪一个?为什么?

2 个答案:

答案 0 :(得分:2)

第一个:它是一个实例变量。

第二个:它是实现范围内的变量,不能用作实例变量。

所以他们是不同的。 P / S:我从未使用过第二个。

答案 1 :(得分:0)

第一个代码定义了Objective-C内部变量,因此您可以在当前工具内部使用。

其次,用C风格定义私有全局变量。如果两个或多个类中存在相同的变量名,则会出现运行时错误,如下图

enter image description here