何时使用。参数以及何时使用[]调用IOS中的函数

时间:2012-10-23 05:51:50

标签: ios5

在iOS中,我在调用函数时会有一些困惑。

-(void) function:(NSString*) str
{
   selectedstring = str;
}

调用该函数时。

我什么时候应该打电话:

self.function = @"My name";

[self function:@"My name"]

(。)参数和[]

之间有什么区别 在iOS函数调用中

1 个答案:

答案 0 :(得分:0)

myVar = self.property相当于myVar = [self property]

self.property = anotherVar相当于[self setProperty:anotherVar]

你使用的是风格问题。

有些人会告诉您,点语法只应用于实际定义为属性的事物(使用@property)。我不同意这一点。我的观点是,只要你调用获取或设置值的东西,就应该使用点语法,而其他副作用最小。无论您是自己编写方法还是合成属性来自动生成它都不重要:重要的是它是否与获取和设置值有关。

所以myArray.count很好,尽管它不是头文件中的@property。但是myURLConnection.start不是,因为它不返回值并且与执行操作有关。

人们不同意这一点。有些人根本不喜欢使用点语法,因为它可能与访问结构的成员(也使用.)混淆。其他人很乐意使用@property s的点语法,但不能用于其他方法。