只要它们的类型匹配,是否可以将元组传递给函数?
当我尝试它时,我在参数错误中得到一个缺少的参数:
var myTuple = ("Text",10,"More Text") func myFunction(a:String,b:Int,c:String) { // etc... } myFunction(myTuple)
是的,在这些条件下可能:
原文链接:https://www.f2er.com/swift/318986.html>元组必须是不可变的
>元组中的值的数量,它们的类型和顺序必须与函数预期的参数匹配
>命名参数必须与函数签名中的外部名称匹配
>非命名参数必须与函数签名中没有外部名称的参数匹配
所以,你的代码是可以的,你唯一要做的就是把元组变成一个不可变的元组(即使用let而不是var):
let myTuple = ("Text",c:String) { // etc... } myFunction(myTuple)
另外一个带有外部名称的例子:
let myTuple = ("Text",paramB: 10,paramC: "More Text") func myFunction(a:String,paramB b:Int,paramC c:String) { // etc... } myFunction(myTuple)