我到目前为止测试了一些关于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