为什么我要在Swift中使用类型转换?

为什么我要在Swift中使用类型转换?,第1张

概述为什么我要在 Swift中使用类型转换? 我正在学习语言,我遇到了类型转换的主题(例如向下和向上转换等),但在我看来,这似乎有点麻烦.为什么我要对一个对象进行类型转换?什么时候这在现实生活应用程序或代码中有用? 我在互联网上看了一下,但我似乎无法找到一个明确的答案.我真的很困惑,所以一些帮助会很棒! 提前致谢! 这里的关键案例是向下转型.你会这样做,因为你可能知道一个对象到底是什么类型,但是编译器 为什么我要在 Swift中使用类型转换?

我正在学习语言,我遇到了类型转换的主题(例如向下和向上转换等),但在我看来,这似乎有点麻烦.为什么我要对一个对象进行类型转换?什么时候这在现实生活应用程序或代码中有用?
我在互联网上看了一下,但我似乎无法找到一个明确的答案.我真的很困惑,所以一些帮助会很棒!

提前致谢!

解决方法 这里的关键案例是向下转型.你会这样做,因为你可能知道一个对象到底是什么类型,但是编译器不知道,所以它不允许你将该类型的消息发送给该对象.

例:

overrIDe func prepare(for segue: UIStoryboardSegue,sender: Any?) {    if let dest = segue.destination as? FlipsIDeVIEwController {        dest.delegate = self    }}

segue.destination类型为UIVIEwController;这只是一个事实,并不取决于你,因为segue的目的地需要能够成为任何类型的UIVIEwController.

只有你知道这个视图控制器实际上是一个FlipsIDeVIEwController.如果你不告诉编译器,你不能设置它的委托属性(普通的UIVIEwController没有委托属性).

总结一下:常见的向下转换情况是当一个类型需要被声明为超类时,因为任何子类都需要被接受,但是在特定的实例中,你知道它是什么子类,所以你需要向下转换它.

总结

以上是内存溢出为你收集整理的为什么我要在Swift中使用类型转换?全部内容,希望文章能够帮你解决为什么我要在Swift中使用类型转换?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/999750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存