Swift多个参数名称工作奇怪

时间:2014-09-22 00:37:10

标签: swift

我到目前为止测试了一些关于Swift的东西并发现了一些奇怪的东西。

Belows是我正在测试的两种方法。

func testFunction(param1:String, param2:String, param3:Int)   {

}

func testFunction2(param1 param1:String, param2 param2:String, param3 param3:Int)   {

}

只要我理解,上述方法的函数调用应如下所示。

testFunction("a", "b", 3)
testFunction2(param1:"a", param2:"b", param3:3)

testFunction2工作正常,但testFunction不会像这样调用。编译说

testFunction("a", param2:"b", param3:3)

是正确的语法。为什么呢?

当参数和外部名称相同时,我可以使用#。所以我试过

func testFunction2(#param1:String, #param2:String, #param3:Int)   {

}

但是编译器说

func testFunction2(#param1:String, param2:String, param3:Int)   {

}

是正确的,第二个功能按预期工作。

我错过了什么吗?

ADDED

enter image description here

这是Apple的快速指南文档(https://developer.apple.com/library/prerelease/mac/documentation/Swift/Conceptual/Swift_Programming_Language/Functions.html#//apple_ref/doc/uid/TP40014097-CH10-XID_245

0 个答案:

没有答案