繁体   English   中英

在Swift中,你可以传递nil作为函数的输入吗?

[英]In Swift, can you pass nil as an input to a function?

我正在阅读很多关于你不应该检查一个nil对象的文章。 这是一个objC范例,它是一个糟糕的设计,并且很快被淘汰了。 所以我的问题是,在下面的例子中,你可以通过“组”作为零值吗? 调用函数时是否会发生nil-checking机制,因此无需实现if(group == nil){..}?

func deleteMembershipForGroup(group:GroupData){
}

你需要使用一个可选的:

func deleteMembershipForGroup(group:GroupData?){
  if let groupReal = group {
  // not nil
  }
}

是! Thomas Kilian是对的,它对我有用! 然后,您将能够传递一个nil参数。 您还会注意到,使用可选变量时,它还会删除警告,说变量“group”将始终为true。

func deleteMembershipForGroup(group:GroupData?){
   if let groupReal = group { <--- Warning gone!
   // not nil
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM