swift,功能中的可选参数

当我将firstThing设置为认值为零时,这将工作,没有认值nil,我得到一个错误调用函数时缺少一个参数。

通过输入Int?我以为它是可选的,认值为零,是吗?如果是这样,为什么没有= nil?

func test(firstThing: Int? = nil) {
    if firstThing != nil {
        print(firstThing!)
    }
    print("done")
}
test()
可选项和认参数是两个不同的东西。

An可选是一个可以为零的变量,就是这样。

认参数在省略该参数时使用认值,认值如下所示:func test(param:Int = 0)

如果您指定一个可选参数,则必须提供该参数,即使您要传递的值为零。如果你的函数看起来像这个func测试(param:Int?),你不能像这个test()一样调用它。即使参数是可选的,它没有认值。

你也可以组合这两个,并且有一个可选参数,其中nil是认值,如下所示:func test(param:int?= nil)。

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...