请问 Swift 里面几个!都是做什么用的啊?

2017-06-24 22:17:01 +08:00
 594747343

第一个, @IBAction func done(){ print("Contents of the text field: (textField.text!)")

第二个, @IBOutlet weak var textField: UITextField!

第三个, func configureText(for cell: UITableViewCell, with item: ChecklistItem){ let lable = cell.viewWithTag(1000) as! UILabel lable.text = item.text

3841 次点击
所在节点    Swift
10 条回复
orderc
2017-06-24 22:57:04 +08:00
我没记错的话,应该是绑定事件,通过鼠标拖动绑定。
dorentus
2017-06-24 23:08:38 +08:00
implicit optional types
Lonely
2017-06-24 23:10:16 +08:00
文档自己翻呗……
Perry
2017-06-24 23:11:57 +08:00
Optional
ethanlu
2017-06-24 23:28:35 +08:00
强制解包咯,官方文档不看?
hteen
2017-06-24 23:35:43 +08:00
强制解包+1
loveuqian
2017-06-25 00:10:06 +08:00
强解啊
一年多没敲 swift 了,是不是现在还是尽量少用这个
kingcos
2017-06-25 07:40:35 +08:00
1. 显式强制解包,就是把 Optional 可选类型强制解包,如果变量为 nil,则直接 Crash
2. 隐式强制解包,就是知道了这个变量为 Optional 可选类型,但后续使用的时候就不用再解包了
3. as 算是类型转换,默认转为可选的类型,因为有可能转不了,如果用 ! 就是强制转了,如果为 nil,则 Crash

@loveuqian 确实要少用慎用强制解包,Uber 在重构其 iOS 端时就有规定不允许使用强制解包,Swift 确实是一门类型安全的语言,也使得其 App 的崩溃率就变得超低
kingcos
2017-06-25 07:42:40 +08:00
@kingcos 同样建议楼主先过文档,苹果这个还是比较良心的,国内也有中文版翻译,但官方的最准确,最新。
594747343
2017-06-25 09:25:20 +08:00
收到,谢谢大家

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/370851

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX