类型推断如何与可选参数一起使用?

蜂蜜

我有一个这样的功能:

func click(sender:UIButton?) {
//some code
}

我想这样称呼该函数:

 - click() // ERROR: Missing argument for parameter #1 in call
 - click(btn) // works
 - click(nil) // works

我已经读过这个问题,但是我仍然很困惑,默认情况下不是不是可选的,而是可选nil的整个思想是关于什么的?我为什么不能做click()呢?

FYI我知道我可以改变方法签名func click(sender:UIButton? = nil),然后click()将工作,但不知何故似乎是多余的,犹如重新说东西是已经知道是默认

瓦迪安

您在询问两件不同的事情:

  • 可选类型nil by default

    var button : UIButton?
    
  • 通过传递默认的可选函数参数nil

    func click(sender:UIButton? = nil)
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

JDK 8的类型推断如何与泛型一起工作?

泛型类型推断不能与方法链接一起使用?

如何在assertThat中将hamcrest nullValue与类型推断一起使用

如何解决:使用T本身时从未与T类型一起使用的参数?

如何将exec()与输入参数一起使用?

如何将ArgumentOutOfRangeException与多个参数一起使用?

如何将XCTAssertNil与可选结构一起使用?

类型推断如何与重载泛型方法一起工作

当将nil-coalescing运算符与两个可选项一起使用时,类型推断失败

Symfony:如何使JMS Serializer与严格类型一起使用?

是否可以将高阶函数与可选参数一起使用

如何将静态扩展方法与静态解析的类型参数一起使用?

Oracle-索引与可选参数一起使用

这些额外的参数如何与map()一起使用?

可选与jsdoc,typescript checkjs(javascript)一起使用useState类型

与可选链接一起使用时,Typescript无法理解未定义的返回类型

如何将TypeApplications与typeclass方法一起使用,为什么GHCi会推断无法使用的类型?

如何使输入与参数一起使用?

如何使目录变形与参数化/索引类型一起使用?

如何与xargs一起使用两个参数?

如何使用MessageListenerAdapter在Spring amqp中将Pojo与消息类型参数一起使用?

重载解析如何与可变参数一起使用?

当类型与其他类型一起操作时,类型推断足够聪明以找出类型

日期搜索参数如何与“期间”字段一起使用?

如何使模板类型推导与引用一起使用?

在 Scala 中将类型 lambda 与更高级的类型一起使用:如何让编译器正确推断类型?

如何创建与嵌套类型参数的子类一起使用的扩展方法?

我如何让类型检查与 React forwardRef 一起使用

用于决定与可选参数一起使用哪种分类方法的函数 - Python