Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 采用可变参数数的函数_Swift - Fatal编程技术网

Swift 采用可变参数数的函数

Swift 采用可变参数数的函数,swift,Swift,在本文件中: 它提到在为循环创建时,我们可以使用0..3和0..3的缩写来替换i=0;i

在本文件中:


它提到在为循环创建
时,我们可以使用
0..3
0..3
的缩写来替换
i=0;i<3++i
i=0;i如果所有参数都是整数:Int[]将是直观的。但是如果您有这样的代码:

func foo(args:AnyObject...) {
    for arg: AnyObject in args {
        println(arg)
    }
}

foo(5, "bar", NSView())
输出:

5
bar
<NSView: 0x7fc5c1f0b450>
5
酒吧

sumOf中的参数类型称为“可变”参数。 传递的参数仅作为一组元素接受,然后在该函数中使用之前转换为数组

这篇文章就是一个很好的例子


您不区分传递数组和传递varargs吗?这是两种不同的用例,而不是根据文档所说的:函数也可以接受不同数量的参数,将它们收集到一个数组中。就在使用
的示例之前,“将它们收集到数组中”部分意味着这些变量参数可以作为数组访问,而不是
va_list
。哦,我明白了!谢谢大家。不知道为什么这个问题被记下来了。谢谢你的回答。你可以在文档中找到更多关于可变参数(…)的信息-
func foo(args:AnyObject...) {
    for arg: AnyObject in args {
        println(arg)
    }
}

foo(5, "bar", NSView())
5
bar
<NSView: 0x7fc5c1f0b450>