美文网首页swift学习
Swift中类和结构体的区别

Swift中类和结构体的区别

作者: 初光夫 | 来源:发表于2019-11-19 15:59 被阅读0次

    类是引用类型,结构体是值类型。

    值类型在传递和赋值时将进行复制,而引用类型则只会使用引用对象的一个指向。引用类型是在堆上,而值类型是在栈上进行存储和操作。相比栈上的操作,对上的操作更加复杂耗时,所以苹果官方推荐使用结构体,这样可以提高App运行的效率。

    class有这几个功能struct没有的:

    class可以继承,这样子类可以使用父类的特性和方法。
    类型转换可以在runtime的时候检查和解释一个实例的类型。
    可以用deinit来释放资源。
    一个类可以被多次引用。

    struct也有这样几个优势:

    结构较小,适用于复制操作,相比于一个class的实例被多次引用更加安全。
    无序担心内存泄漏或者多线程冲突问题。

    出处->

    相关文章

      网友评论

        本文标题:Swift中类和结构体的区别

        本文链接:https://www.haomeiwen.com/subject/hotgictx.html