同一个参数有两个不同的名称有什么意义?
What is the point of having two different names for the same parameter?
func mapEachElement (inArray arr: [Int], withFunc aFunc: (Int))
为什么会有 "inArray and then "arr"...有什么意义?
与 "withFunc and "aFunc" 相同,它使代码更复杂,也更难阅读,为什么还要使用它们?
inArray 是函数调用者在传递参数时应使用的外部名称。 arr 是函数实现者在实现中用来引用参数的内部名称。您不必提供外部 name.It 使其更具可读性。它更像是使 swift 函数名称和参数像 Objective-C 函数一样可读。
我也不赞成使用不同的内部名称和外部名称。
有或没有外部名称对我来说很有意义。
object.BeepXTimes(6)
不需要为其参数指定外部名称,因为函数名称暗示了参数的含义。
我认为的基本原理是,有时函数的外部参数的命名在句子中的措词对调用者有意义:
someView.animateInWithDuration(0.25, withTimingFunction: .easeIn)
外部名称 withTimingFunction
使函数调用读起来像一个句子,但 withTimingFunction
使内部参数名称变得糟糕。您可能希望您的参数名称只是 timingFunction
。拥有单独的内部和外部参数名称可以让您做到这一点。
不过,对我来说,这在函数定义中要求的额外复杂性似乎不值得。好消息是,默认情况下,内部和外部参数名称都使用相同的名称创建参数,因此标准语法简单易读。
这些是内部和外部参数名称。
就像在 Obj-C 中一样,您可能有
- (void)calculateFoo:(id)foo withBar:(id)bar ...
[object calculateFoo:var1 withBar:var2];
在Swift中,我们使用
func calculateFoo(foo: AnyObject, withBar bar: AnyObject) ...
object.calculateFoo(var1, withBar: var2)
内部名称 foo
和 bar
只能在 function/method 内部访问。外部名称提供用于调用函数的参数 labels。
在您的情况下,您需要使用内部名称nibBundle
。这是函数体内可访问的那个。
func mapEachElement (inArray arr: [Int], withFunc aFunc: (Int))
为什么会有 "inArray and then "arr"...有什么意义?
与 "withFunc and "aFunc" 相同,它使代码更复杂,也更难阅读,为什么还要使用它们?
inArray 是函数调用者在传递参数时应使用的外部名称。 arr 是函数实现者在实现中用来引用参数的内部名称。您不必提供外部 name.It 使其更具可读性。它更像是使 swift 函数名称和参数像 Objective-C 函数一样可读。
我也不赞成使用不同的内部名称和外部名称。
有或没有外部名称对我来说很有意义。
object.BeepXTimes(6)
不需要为其参数指定外部名称,因为函数名称暗示了参数的含义。
我认为的基本原理是,有时函数的外部参数的命名在句子中的措词对调用者有意义:
someView.animateInWithDuration(0.25, withTimingFunction: .easeIn)
外部名称 withTimingFunction
使函数调用读起来像一个句子,但 withTimingFunction
使内部参数名称变得糟糕。您可能希望您的参数名称只是 timingFunction
。拥有单独的内部和外部参数名称可以让您做到这一点。
不过,对我来说,这在函数定义中要求的额外复杂性似乎不值得。好消息是,默认情况下,内部和外部参数名称都使用相同的名称创建参数,因此标准语法简单易读。
这些是内部和外部参数名称。
就像在 Obj-C 中一样,您可能有
- (void)calculateFoo:(id)foo withBar:(id)bar ...
[object calculateFoo:var1 withBar:var2];
在Swift中,我们使用
func calculateFoo(foo: AnyObject, withBar bar: AnyObject) ...
object.calculateFoo(var1, withBar: var2)
内部名称 foo
和 bar
只能在 function/method 内部访问。外部名称提供用于调用函数的参数 labels。
在您的情况下,您需要使用内部名称nibBundle
。这是函数体内可访问的那个。