理解像tableView这样的函数中的Swift参数表示法

我最近来了accros Swift,但有一些我不明白。 我想实现一个tableView与细胞。 我知道,但是这个符号对我来说有点困惑。

我有这个函数从UITableViewDataSource

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 5 } 

你能告诉我什么是numberOfRowsInSection? 这是他的参数部分的function吗? 我看到函数tableView的名称返回一个Int,参数tableView和部分与自己的types。 但我真的不知道numberOfRowsInSection。

而当这个函数被调用?

感谢您的回答。

不同之处在于内部外部的参数标签。 您可以使用两种不同types的参数标签。 在函数本身内部使用内部函数,在调用函数时使用外部函数。

 tableView(tableView: UITableView, numberOfRowsInSection section: Int) /\ /\ /\ || || || internal external internal 

我们来看一个示例函数:

 func test(str:String, thisIsATest str1:String){ println(str1)//works println(thisIsATest)//error } 

就像你看到的,我打印出str1值。 但是你会看到,它只会与内部的论点一起工作。

但是如果你现在从外面调用这个函数:

 test("hi", str1:"hi2") 

它会抛出一个错误。 因为你使用internal参数标签。 但是,如果您现在使用外部参数标签thisIsATest ,它将起作用:

 test("hi", thisIsATest:"hi2") 

此外,您不必设置外部标签,但如果设置了外部标签,则还必须为其设置内部标签。 但是在init()方法中,你必须在某些情况下设置内部标签。

即使很容易提醒,我也为自己做了一个小马:我将一个function与一家公司比较:如果你在公司工作,而且你想打电话给在公司工作的人,你可以使用内部电话数。 但是,如果您想将公司服务用作客户(function的用户),则可以从外部号码拨打电话。